Files
Guido.Tech/ai_intelligence_layer/__pycache__/test_webhook_push.cpython-312-pytest-8.3.3.pyc

45 lines
5.5 KiB
Plaintext
Raw Normal View History

2025-10-19 02:00:56 -05:00
<EFBFBD>
.r<>hM<00><00><><00>dZddlZddlmcmZddlZddlZddl Z ddl
m Z m Z ddl mZmZdZdddd d
d d d <0A>Zd<0E>Zd<0F>Zedk(rej*e<13><00>yy)a<>
Test script to simulate the enrichment service POSTing enriched telemetry
to the AI Intelligence Layer webhook endpoint.
This mimics the behavior when NEXT_STAGE_CALLBACK_URL is configured in the
enrichment service to push data to http://localhost:9000/api/ingest/enriched
Usage:
python3 test_webhook_push.py # Post sample telemetry
python3 test_webhook_push.py --loop 5 # Post 5 times with delays
<EFBFBD>N)<02>urlopen<65>Request)<02>URLError<6F> HTTPErrorz)http://localhost:9000/api/ingest/enriched<65>g333333<33>?g
ףp=
<EFBFBD>?g<>(\<5C><><EFBFBD><EFBFBD>?g=
ףp=<3D>?g)\<5C><><EFBFBD>(<28>?<3F>low)<07>lap<61>aero_efficiency<63>tire_degradation_index<65>
ers_charge<EFBFBD>fuel_optimization_score<72>driver_consistency<63>weather_impactc<00>H<00>tj|<00>jd<01>}tt|ddd<03>d<04><05>} t |d<06><07>5}|j <00>jd<01>}tj|<04>}td|d <00><00><02>td
|jd <0B><00><00><02>td |jd <0A><00>d<0E><03> ddd<0F>y#1swYyxYw#t$re}td|j<00>d|j<00><00><04> |j <00>jd<01>}td|<07><00><02>n#YnxYwYd}~yd}~wt$r-}td|j<00><00><02>td<16>Yd}~yd}~wt$r}td|<06><00><02>Yd}~yd}~wwxYw)z'POST telemetry to the webhook endpoint.zutf-8zapplication/json)z Content-Type<70>Accept<70>POST)<03>data<74>headers<72>method<6F>
)<01>timeoutu✓ Posted lap r z
Status: <20>statusz Buffer size: <20> buffer_sizez recordsNTu✗ HTTP Error z: z Details: Fu✗ Connection Error: z) Is the AI service running on port 9000?u✗ Unexpected error: )<10>json<6F>dumps<70>encoder<00> WEBHOOK_URLr<00>read<61>decode<64>loads<64>print<6E>getr<00>code<64>reasonr<00> Exception)<08>telemetry_data<74>body<64>req<65>resp<73> response_body<64>result<6C>e<>
error_bodys <20>P/Users/karandubey/projects/hpcsimsite/ai_intelligence_layer/test_webhook_push.py<70>post_telemetryr/!sy<00><00> <0F>:<3A>:<3A>n<EFBFBD> %<25> ,<2C> ,<2C>W<EFBFBD> 5<>D<EFBFBD>
<11><13> <11>.<2E>(<28>
<EFBFBD><16> <06>C<EFBFBD><15> <14>S<EFBFBD>"<22> %<25> <18><14> <20>I<EFBFBD>I<EFBFBD>K<EFBFBD>.<2E>.<2E>w<EFBFBD>7<>M<EFBFBD><19>Z<EFBFBD>Z<EFBFBD> <0A>.<2E>F<EFBFBD> <11>O<EFBFBD>N<EFBFBD>5<EFBFBD>$9<>#:<3A>;<3B> <<3C> <11>J<EFBFBD>v<EFBFBD>z<EFBFBD>z<EFBFBD>(<28>3<>4<>5<> 6<> <11>O<EFBFBD>F<EFBFBD>J<EFBFBD>J<EFBFBD>}<7D>$=<3D>#><3E>h<EFBFBD>G<> H<><17>  <18> <18> <18><> <15><15> <0A><0F><01><06><06>x<EFBFBD>r<EFBFBD>!<21>(<28>(<28><1A>4<>5<> <11><1A><16><16><18><1F><1F><17>1<>J<EFBFBD> <11>K<EFBFBD>
<EFBFBD>|<7C>,<2C> -<2D><> <11> <10><><14><> <13><15> <0A>&<26>q<EFBFBD>x<EFBFBD>x<EFBFBD>j<EFBFBD>1<>2<> <0A>9<>;<3B><14><> <14><15> <0A>&<26>q<EFBFBD>c<EFBFBD>*<2A>+<2B><14><><15>sf<00> C <00> BC<03> C <00>C<07>C <00>C <00> F!<03>)%E <03>-D=<02><E <03>=E<05>?E <03> F!<03>#E=<03>= F!<03> F<03>F!c <00><><00>ddl}|jd<02><03>}|jdtdd<06><07>|jdtd d
<EFBFBD><07>|j <00>}t d t <00><00><02>t d |j<00>d <0A><03>d}t|j<00>D]<5D>}tj<00>}td|z|d<tdttd|dzzd<12><00>|d<tdttd|dzz
d<12><00>|d<td|dzdzzd <09>|d<gd<1A>|dz|d<t|<05>r|dz }||jdz
ks<01><>tj |j"<00><00><>t dd<1D><00><02>t d|<03>d|j<00>d <20><05>|dkDr!t d!<21>t d"<22>t d#<23>||jk(rdSdS)$NrzTest webhook push to AI layer)<01> descriptionz--loop<6F>z#Number of telemetry records to post)<03>type<70>default<6C>helpz--delay<61>zDelay between posts (seconds)zTesting webhook push to z
Will post z telemetry record(s)
r g<00>?r g{<14>G<EFBFBD>z<EFBFBD>?<3F>gr
g{<14>G<EFBFBD>z<EFBFBD>?g<00>?<3F>g<><67><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>?r )rr<00>mediumr9<00>highr<00>
z2==================================================zPosted <20>/z records successfullyu.
✓ Telemetry is now in the AI layer's bufferzB Next: Call /api/strategy/brainstorm (without enriched_telemetry)z3 The service will use buffered data automatically
)<12>argparse<73>ArgumentParser<65> add_argument<6E>int<6E>
parse_argsr!r<00>loop<6F>range<67>SAMPLE_TELEMETRY<52>copy<70>min<69>round<6E>maxr/<00>time<6D>sleep<65>delay)r=<00>parser<65>args<67> success_count<6E>i<> telemetrys r.<00>mainrQFs<><00><00><13> <15> $<24> $<24>1P<31> $<24> Q<>F<EFBFBD>
<EFBFBD><17><17><08>s<EFBFBD>A<EFBFBD><a<><17>b<>
<EFBFBD><17><17> <09><03>Q<EFBFBD>=\<5C><17>]<5D> <11> <1C> <1C> <1E>D<EFBFBD> <09> $<24>[<5B>M<EFBFBD>
2<EFBFBD>3<> <09>J<EFBFBD>t<EFBFBD>y<EFBFBD>y<EFBFBD>k<EFBFBD>!7<>
8<EFBFBD>9<><15>M<EFBFBD> <12>4<EFBFBD>9<EFBFBD>9<EFBFBD> <1D>#<23><01>$<24>)<29>)<29>+<2B> <09>+<2B>E<EFBFBD>2<>Q<EFBFBD>6<> <09>%<25><18>/2<>#<23>u<EFBFBD>=M<>Nf<4E>=g<>kl<6B>os<6F>ks<6B>=t<>vw<76>7x<37>.y<> <09>*<2A>+<2B>'*<2A>3<EFBFBD><05>6F<36>GX<47>6Y<36>]^<5E>ae<61>]e<>6f<36>hi<68>0j<30>'k<> <09>#<23>$<24>"'<27><03>q<EFBFBD>1<EFBFBD>u<EFBFBD><03>m<EFBFBD>(;<3B>Q<EFBFBD>"?<3F> <09>,<2C><1F>&P<>QR<51>UV<55>QV<51>&W<> <09>"<22>#<23> <19>)<29> $<24> <19>Q<EFBFBD> <1E>M<EFBFBD> <0C>t<EFBFBD>y<EFBFBD>y<EFBFBD>1<EFBFBD>}<7D> <1C> <10>J<EFBFBD>J<EFBFBD>t<EFBFBD>z<EFBFBD>z<EFBFBD> "<22>#<23>"
<EFBFBD>B<EFBFBD>v<EFBFBD>h<EFBFBD>-<2D><18> <09>G<EFBFBD>M<EFBFBD>?<3F>!<21>D<EFBFBD>I<EFBFBD>I<EFBFBD>;<3B>.C<>
D<EFBFBD>E<><14>q<EFBFBD><18> <0A>?<3F>A<> <0A>R<>T<> <0A>D<>F<><1D><14><19><19>*<2A>1<EFBFBD>1<><01>1<><00>__main__)<16>__doc__<5F>builtins<6E> @py_builtins<6E>_pytest.assertion.rewrite<74> assertion<6F>rewrite<74>
@pytest_ar<61>sysrrI<00>urllib.requestrr<00> urllib.errorrrrrDr/rQ<00>__name__<5F>exit<69>rRr.<00><module>rasn<00><01>
<04><01><00>
<EFBFBD> <0B> <0B>+<2B>,<2C>9<> <0B>
<0E><1B>"<22><16>#<23><1E><1B><02><10>#<15>J$2<>L <0C>z<EFBFBD><19> <0C>C<EFBFBD>H<EFBFBD>H<EFBFBD>T<EFBFBD>V<EFBFBD><14>rR