[37_echodevice] Amazon Echo Modul (nicht Alexa)

Begonnen von michael.winkler, 12 Januar 2018, 18:20:12

Vorheriges Thema - Nächstes Thema

michael.winkler

Zitat von: Amenophis86 am 27 März 2018, 20:26:54
Habe heute mal damit ein bisschen rum gespielt und bei mir scheint es nicht zu klappen. Ja, die Ausgabe ist ganz normal eine MP3 Datei, die neusten Version ist eingespielt  und FHEM neu gestartet. Ich kann das attr setzen, aber es macht keinen Unterschied. Hier ein Verbose 5 Auszug mit einer Nachricht und dem attr auf 40:
2018.03.27 20:23:49 4: [WR.Echo] [echodevice_ParseTTSMP3] URL    = https://polly.eu-west-1.amazonaws.com/v1/speech
2018.03.27 20:23:49 4: [WR.Echo] [echodevice_ParseTTSMP3] DATA   = {"OutputFormat": "mp3","Text": "Hallo Welt","TextType": "text","VoiceId": "Marlene"}
2018.03.27 20:23:49 4: [WR.Echo] [echodevice_ParseTTSMP3] HEADER = Authorization: AWS4-HMAC-SHA256 Credential=AKIAIF63NHCPSUFAD67A/20180327/eu-west-1/polly/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=a11c49fc2d61b13487dcfe4f1f4f4b9c0e1c26a2a528c23977d5febfec6b6939
X-Amz-Date: 20180327T182349Z
Content-Type: application/json
2018.03.27 20:23:49 4: [WR.Echo] [echodevice_ParseTTSMP3] ERROR  =
2018.03.27 20:23:49 5: [WR.Echo] [echodevice_ParseTTSMP3] DATA   = ID3#TSSELavf57.71.100��`�3��+F
�Y2d�Ј���&����;�DD���B��Gw��w�DGs�B�����wwwD��ww���������w��w�wwww?��������}����ww4,<<<0��= r�E��h��EA��A��񼬘K�����M���b�&��_����,W4da � �{��d�� Z
��Ɗ�O�cD����&JɛL�Q���/����[��H �@�)���205/��������\؟HП�A&M7��������s�e���s5X� ��I���.�G u'����E�
����b�$z�7�X���M��$���k8��<�ꇑ7YTL�X�\d�$6��ᯕ/�:V��1< iqIu�ӿg����D�RIS�N��[�f�o����Ör�k���so�����t�d�W�!_�/�aޛϾ\,�D���c�����L�$�R�j,��b�#�꾶م0�4���a �ʜnjo��2Ჸ>Y/�Y[�=���$�� "���;Y3����2筰�'w�� �KH �v��!����W{" 9��������塐�׿* s�%'j5��$��(k��'�
`$! �q�UY��9=�d����`�$Y��V�
~��XT_��h�0u����k�
���L����K.p>E��BC��*����H��(Qm����`t`7^��
k�_�xubC�8Kȟ�Ê-r�A=n� ;y�� �% \�?�QcCEˀ�ႊ���_y�_HA�4���-��b�!�浆�D�`콌H��u/����uMF�*���7)0f{qX �,�S���/�H����M�" ̜��I�h��22!���@�9���EB֞����̻� �HiQ��D ����-�o�[�ʛ/�m����o�LD^�<p����S?*��b��ֱ�Ʌ�6=�����rܽ����h�0�r��Sp�w�����;�9�ɘs��Y����������� �τ�sY���ͭ��o���b�ۢ�Gw�����������d������B�.�����b�� ����^K� �Hb۰,vѰؒ�p�VkHI���b�-�ޢ6�� y��y�#d�8>�C��aU�E��,m�G���?qn6 $���Xȵ[��|H���A*�}(̓\}�����@�'�Ь1��Ո�IL��r�UL1Kl����c-�~j���D��Ǭfγ{�j�R��%�W��'@fB��B��׉��`�>����O5z�;�����R���-uC�����w��w�oٶ�o���č<��H:��<,��Ȅ��^�2��B��d�s�3\����Q����@b��]r�m5[0��E�ה��w������B�R���!�<�\& �9��b�Uî��� (�K��8��e��������ޭ�O\��.LOk�ق褗 �
݂Կ{�)71�zrB������}5�����lae��ʅ#�N���:���-�D�)��Jl��Z-6�D�fv�:e!��s��,�����^@ʵ�R�sү��e��b�j"�V���;���oq%��H�."��Ռ��ʟ�s*�� �Hy� ��0��K����{PH;92��� ō}�"Zd�Hs��7ʛ���W��9~��w��}��y�� X��!�s=���8���y�X��Eb�x�3h�G��E����3A�z���b�}����F���Z � ƚS�����h���������>G[\��Z����q�+l�b���a��qΝ�L,Y��@3I�آ �� �^zѕ9�zϘ"]�Qch*:*貎�*Y�|�)�߬$D6e�B�
�c�Ȭ ڠ�������`č��r�|X��N�Ea���<�(�&7 @� ��  G(��rqX ���bM�/���˓��VE��Ó�� �
_s7D'w�Į|)���������ϙ����mM��F.�*j3�*90a��Q���T�_$��VB6�)c����bğRN��F�"���F�2�%_�2�r��MK@�=��$Q(�B���ؿ�T�e���eCZ��m�]���W�\E�nZ"ѡqi�L���"��σS�Nj2ÏZ�>0��̒�)�����J0ף�U����K�={/�G���R�{��4G�l���bı "v�NQ���o�zC�8%4�v5I�_�
f�8r!Ð?{�]�U��20�������Ԡ�����gV����.�Oe��`���_�U�\Yo
��t���^�E<@(�md�@i� �I]�k.):h�4����JT����%�dh(
8�/CY���b���6���.'�7F9Q�M
���b���=�'"����QW|�#}MQ7fi��2�����)�EF3��'
����������h�[�M5������Xi�Zd�l�j= ���E\��E���@�2��
��\.�@'��� �YqN$r��"����`��!+&�F�J���@P�{������)��[�b��ReS��D����*��+o���]^�����,hD"�SPEK��j��겺�fM�\��LX"�Z=��1��f�3��F�/��1�_+�ь�}1/����`�᭶�)�
~����íI���b��""����+�S�H�Y�/��>�{�#�}J�G]��G�BU��?�����A<m*Q��R����e/T8�$"�S�n�FMf4!䲡Q���֏���i�������(��.�Z�<�\c�Rv6�wV�:��=KI�3��"�GR381MP����b�� �����D�-U�����R�����o��3PFs��o��~���Ɛ����� T2x29
1�i�� \�<?RJLAR`�>�Ye8=&�%>uu�� ۉM��b �Ӑ��KĥT��k�hOҎY���[�����*V�#�t`6^��`�� ʶ���ÀA8$١$AhiP9W��J�'��]�>�K�?r���L[qs&��Q1� (*/&2f�� (�,����J����OĽClC��h/�m���3�D���c�tD)����x6 �`$��) ���}���ߢ2r�w����b��#�x� �qy60K�o�����Ne����[��r���s�hE]>��Qs�PS#��5db�
��<Y��Sz�5$ݚ�խY˛�t�ŷ|������� d��ԟ�(`�1bHP�u|.���3��� /�eC�g�F��xp�ZљzMD�����b��"�.l��ck���S�APcٿ��8@�;%5��s��1�JMG�g)��� <'�<��t����=p-��R�����]ٕZʳHaW��[<Pĉ�#HTo���4�&5�m1JIIK/D,�C���3�f��%Q_�@Ț�rT4�������b��%r�d$�K2*��-�4�P�_��06e…��t<r� �~w�|���r�d*!0�Kt�G��N��eqͳ��A�Z�[�����f��c����9#(�r�J�$�����1-�j4�%�l��d�i�K��₽��<�y���<���������`��%��X�Kڝ L�hD���T:y"x���^~��6���y�4!�U|�C���`�|Yq[n��y�{��86p!�U��x~��p�x�?��T����~��W\�0����q�5��̠�+����k�(gp<8��#�d�
G!��X����b�� �v<X0�t����$�߸l�D {�׹�ѠbH&���������b"��,*m���~��!A�٢j#�����@��Ңg?������s_�ǿ�;�1�y�j��꿻ܹ�5�uũKƀvO���ǖ�������|����)���<����ͧ����2�E��b��BdD �����z~�>1����VWh�dWf���ݑc�Zw��Q
(o.
�p�x�� ���i�4w���'S l@�'&��O����^� 0�4�f]iHID��X a��� �%V`�)O�Ry\����B]#;}�8z�]���,?Y��Z|8�WO`���bĂ;$��x�X�gn�����s�y�L�ǫ$�'�F�
��ٻ�=�k�B�7w��t:-�>��U��fq��ճ��x��m���,{n&�k����x���X�������ɟ&k�%��F�z%�rx�đRJ�T��R
�|���Ra�Lz��{�p���`�%'���)�XQo����:���V��SR�uV����i�v�D�ㅮ��n-v�!M)5&�D�`�A0@>�m����M�¨#��������r
eU�����T�œ���q�H���ML��e��(]��Vr=�l���&R1p�\�+�����M� ��b� �"t�I�p���E�N䥘����̶񣢑P5���Y�ՙ�����%�Mi�K������������p
�lhHR�W%t��Fe�������
��/����C��"��*c����ҏ@��>D�J�n����̞-��C4�kØ�C�d5���z�[�
��b� !�~Py�\T*�i ���K�H���H�94�D���TH���r �%�2�H������
��í�ER5 )U�R��V��^����AF*����<X�@*ꁗC��XjTD
� +����T�m�FV�O?I���}��,5 ��((e �( N���b�(�M�H��F���G/��Y���8�f�5��5BD�hn~�-y�;l��8��
����B¤]g�&� �x��$lX �f�H��� !~LAME3.99.5UUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUUU
2018.03.27 20:23:49 4: [WR.Echo] [echodevice_ParseTTSMP3] MP3File     = WR.Echo.mp3
2018.03.27 20:23:49 4: [WR.Echo] [echodevice_ParseTTSMP3] M3UFile     = live18-hq.aac.m3u
2018.03.27 20:23:49 3: [WR.Echo] [echodevice_ParseTTSMP3] MP3 normal. = 40
2018.03.27 20:23:50 4: [WR.Echo] [echodevice_SendCommand]    - type tunein
2018.03.27 20:23:50 4: [WR.Echo] [echodevice_SendCommand]    - PushToCmdQueue https://layla.amazon.de/api/tunein/queue-and-play?deviceSerialNumber=SERIAL&deviceType=A3S5BH2HU6VAYF&guideId=s237481&contentType=station&callSign=&mediaOwnerCustomerId=CUSTOMER
2018.03.27 20:23:50 4: [WR.Echo] [echodevice_SendCommand]    - PushToCmdQueue
2018.03.27 20:23:50 4: [WR.Echo] [echodevice_HandleCmdQueue] - send command https://layla.amazon.de/api/tunein/queue-and-play?deviceSerialNumber=SERIAL&deviceType=A3S5BH2HU6VAYF&guideId=s237481&contentType=station&callSign=&mediaOwnerCustomerId=CUSTOMER
2018.03.27 20:23:50 5: [WR.Echo] [tunein]$VAR1 = '{"error":null}';

2018.03.27 20:23:52 4: [WR.Echo] [echodevice_GetSettings] Timer CNTERVAL = -60
2018.03.27 20:23:52 4: [WR.Echo] [echodevice_SendCommand]    - type player
2018.03.27 20:23:52 4: [WR.Echo] [echodevice_SendCommand]    - PushToCmdQueue https://layla.amazon.de/api/np/player?deviceSerialNumber=SERIAL&deviceType=A3S5BH2HU6VAYF&screenWidth=1392&_=1522175032
2018.03.27 20:23:52 4: [WR.Echo] [echodevice_SendCommand]    - PushToCmdQueue
2018.03.27 20:23:52 4: [WR.Echo] [echodevice_HandleCmdQueue] - send command https://layla.amazon.de/api/np/player?deviceSerialNumber=SERIAL&deviceType=A3S5BH2HU6VAYF&screenWidth=1392&_=1522175032
2018.03.27 20:23:52 4: [WR.Echo] [echodevice_GetSettings] Timer INTERVAL = 60
2018.03.27 20:23:53 5: [WR.Echo] [player]$VAR1 = '{"playerInfo":{"hint":null,"infoText":{"multiLineMode":false,"subText1":null,"subText2":null,"title":"Pieci - 5 Baltic Music"},"isPlayingInLemur":false,"lemurVolume":null,"lyrics":null,"mainArt":{"altText":"Albumcover","artType":"UrlArtSource","contentType":"image/jpeg","url":"https://cdn-radiotime-logos.tunein.com/s204188q.png"},"mediaId":"d46c5516-b3b0-4aa9-b998-d2f68bf31df1:1","miniArt":{"altText":"TuneIn","artType":"IconArtSource","iconId":"tunein","iconStyles":null},"miniInfoText":{"multiLineMode":false,"subText1":null,"subText2":null,"title":"Pieci - 5 Baltic Music"},"playbackSource":null,"playingInLemurId":null,"progress":{"allowScrubbing":false,"locationInfo":null,"mediaLength":0,"mediaProgress":0,"showTiming":false,"visible":true},"provider":{"artOverlay":null,"fallbackMainArt":{"altText":null,"artType":"IconArtSource","iconId":"music-no-art","iconStyles":null},"providerDisplayName":null,"providerLogo":{"altText":"TuneIn","artType":"IconArtSource","iconId":"tunein","iconStyles":null},"providerName":"TuneIn Live-Radio"},"queueId":"d46c5516-b3b0-4aa9-b998-d2f68bf31df1","state":"IDLE","template":null,"transport":{"closedCaptions":null,"layoutType":"MusicTransportLayout","lyrics":"HIDDEN","next":"DISABLED","playPause":"ENABLED","previous":"DISABLED","repeat":"HIDDEN","shuffle":"HIDDEN"},"volume":{"muted":false,"volume":69}}}';


Vielleicht kannst du ja etwas erkennen. Das doofe ist natürlich, dass ja auch das Volume Reading nicht immer klappt und ich somit vor einer Ansage auch so die Lautstärke nicht hoch schrauben kann. Vielleicht findest du ja den Fehler warum die MP3 weiterhin nicht lauter gestellt werden kann. Zum testen hatte ich zwischen 5 und 40 gewechselt, aber alles blieb gleich. Wenn ich dir helfen kann beim Fehler suchen sag bescheid.

Du könntest mal die folgenden Zeilen abändern und dann mal ein LOG zusenden.


if ($TTS_normalize_value != 200 ) {
Log3 $name, 4, "[$name] [echodevice_ParseTTSMP3] MP3 normal. = " . $TTS_normalize_value ;
system("normalize-mp3 -a " . $TTS_normalize_value . "dBFS " . $FW_dir . "/echodevice/" . $MP3Filename . " > /dev/null 2>&1");
}


Ändern in


if ($TTS_normalize_value != 200 ) {
Log3 $name, 4, "[$name] [echodevice_ParseTTSMP3] MP3 normal. = " . $TTS_normalize_value ;
system("normalize-mp3 -a " . $TTS_normalize_value . "dBFS " . $FW_dir . "/echodevice/" . $MP3Filename);
}

michael.winkler

Zitat von: balli1187 am 27 März 2018, 21:47:03
Wenn ich mir etwas wünschen dürfte, würde ich eher für ein Attribut ala volume_alarm für die Sprachausgabe plädieren.
Aktuell löse ich es, indem ich die Lautstärke durch ein notify hoch setze und später wieder zurück auf den vorherigen Wert.
Mein Vorschlag wäre genau diese Attribut "volume_alarm" hierfür zu verwenden, dann könnte man es auch von der normalen Alexa App ändern.

balli1187

Zitat von: michael.winkler am 28 März 2018, 14:57:11
Mein Vorschlag wäre genau diese Attribut "volume_alarm" hierfür zu verwenden, dann könnte man es auch von der normalen Alexa App ändern.
Okay, wenn das so funktioniert... ich hatte die Erklärung nicht so interpretiert, dass das Attribut bei tts-Ansagen greift.
Und als frage noch hinterher: hat das normale Volume oder das volume_alarm Vorrang? Bei mir hat sich die Lautstärke immer angepasst, wenn ich Volume vor der Ansage geänder hab.


Gesendet von iPhone mit Tapatalk
FHEM auf QNAP im docker, nanoCUL per ser2net an VU+, 2x Echo Dot, 3x HM-ES-PMSw1-Pl, 3x HM-LC-Bl1PBU-FM, 6x Sonoff Basic, div. "Shelly Eigenbauten" von Papa Romeo, ESPRGBWW-Controller, ...
Projekte: Smart Mirror in Spiegelschrank auf RPi Zero

michael.winkler

Zitat von: balli1187 am 28 März 2018, 15:01:43
Okay, wenn das so funktioniert... ich hatte die Erklärung nicht so interpretiert, dass das Attribut bei tts-Ansagen greift.
Und als frage noch hinterher: hat das normale Volume oder das volume_alarm Vorrang? Bei mir hat sich die Lautstärke immer angepasst, wenn ich Volume vor der Ansage geänder hab.


Gesendet von iPhone mit Tapatalk
Ich habe es jetzt so angepasst, dass wenn volume_alarm kleiner volume ist, das volume angepasst wird. Ansonsten wird nichts verändert.

balli1187

#589
Zitat von: michael.winkler am 27 März 2018, 21:57:28
Du könntest mal die folgenden Zeilen abändern und dann mal ein LOG zusenden.


if ($TTS_normalize_value != 200 ) {
Log3 $name, 4, "[$name] [echodevice_ParseTTSMP3] MP3 normal. = " . $TTS_normalize_value ;
system("normalize-mp3 -a " . $TTS_normalize_value . "dBFS " . $FW_dir . "/echodevice/" . $MP3Filename . " > /dev/null 2>&1");
}


Ändern in


if ($TTS_normalize_value != 200 ) {
Log3 $name, 4, "[$name] [echodevice_ParseTTSMP3] MP3 normal. = " . $TTS_normalize_value ;
system("normalize-mp3 -a " . $TTS_normalize_value . "dBFS " . $FW_dir . "/echodevice/" . $MP3Filename);
}


Habs entsprechend angepasst. merklich Änderung gab es keine. Hier das verbose 5 Log

2018.03.28 21:11:28 4: [ECHO_G090LF0971530F3B] [echodevice_GetSettings] Timer CNTERVAL = -60
2018.03.28 21:11:28 4: [ECHO_G090LF0971530F3B] [echodevice_SendCommand]    - type player
2018.03.28 21:11:28 4: [ECHO_G090LF0971530F3B] [echodevice_SendCommand]    - PushToCmdQueue https://layla.amazon.de/api/np/player?deviceSerialNumber=SERIAL&deviceType=A3S5BH2HU6VAYF&screenWidth=1392&_=1522264288
2018.03.28 21:11:28 4: [ECHO_G090LF0971530F3B] [echodevice_SendCommand]    - PushToCmdQueue
2018.03.28 21:11:28 4: [ECHO_G090LF0971530F3B] [echodevice_HandleCmdQueue] - send command https://layla.amazon.de/api/np/player?deviceSerialNumber=SERIAL&deviceType=A3S5BH2HU6VAYF&screenWidth=1392&_=1522264288
2018.03.28 21:11:28 4: [ECHO_G090LF0971530F3B] [echodevice_GetSettings] Timer INTERVAL = 60
2018.03.28 21:11:28 5: [ECHO_G090LF0971530F3B] [player]$VAR1 = '{"playerInfo":{"hint":null,"infoText":{"multiLineMode":false,"subText1":null,"subText2":null,"title":"Pieci - 5 Baltic Music"},"isPlayingInLemur":false,"lemurVolume":null,"lyrics":null,"mainArt":{"altText":"Albumcover","artType":"UrlArtSource","contentType":"image/jpeg","url":"https://cdn-radiotime-logos.tunein.com/s204188q.png"},"mediaId":"e10950d6-028b-45d5-9242-fb3fe88caa7b:1","miniArt":{"altText":"TuneIn","artType":"IconArtSource","iconId":"tunein","iconStyles":null},"miniInfoText":{"multiLineMode":false,"subText1":null,"subText2":null,"title":"Pieci - 5 Baltic Music"},"playbackSource":null,"playingInLemurId":null,"progress":{"allowScrubbing":false,"locationInfo":null,"mediaLength":0,"mediaProgress":0,"showTiming":false,"visible":true},"provider":{"artOverlay":null,"fallbackMainArt":{"altText":null,"artType":"IconArtSource","iconId":"music-no-art","iconStyles":null},"providerDisplayName":null,"providerLogo":{"altText":"TuneIn","artType":"IconArtSource","iconId":"tunein","iconStyles":null},"providerName":"TuneIn Live-Radio"},"queueId":"e10950d6-028b-45d5-9242-fb3fe88caa7b","state":"IDLE","template":null,"transport":{"closedCaptions":null,"layoutType":"MusicTransportLayout","lyrics":"HIDDEN","next":"DISABLED","playPause":"ENABLED","previous":"DISABLED","repeat":"HIDDEN","shuffle":"HIDDEN"},"volume":{"muted":false,"volume":50}}}';

2018.03.28 21:11:35 4: [ECHO_G090LF0971530F3B] [echodevice_ParseTTSMP3] URL    = https://polly.eu-west-1.amazonaws.com/v1/speech
2018.03.28 21:11:35 4: [ECHO_G090LF0971530F3B] [echodevice_ParseTTSMP3] DATA   = {"OutputFormat": "mp3","Text": "Die ist ein tts_normalize Test!","TextType": "text","VoiceId": "Vicki"}
2018.03.28 21:11:35 4: [ECHO_G090LF0971530F3B] [echodevice_ParseTTSMP3] HEADER = Authorization: AWS4-HMAC-SHA256 Credential=AKIAIFW6HZ3RISS457UQ/20180328/eu-west-1/polly/aws4_request, SignedHeaders=content-type;host;x-amz-date, Signature=1a5330755561301948bb5a625cd34f3a5f9d25fc5923a30c41d2ee0c90570a62
X-Amz-Date: 20180328T191134Z
Content-Type: application/json
2018.03.28 21:11:35 4: [ECHO_G090LF0971530F3B] [echodevice_ParseTTSMP3] ERROR  =
2018.03.28 21:11:35 5: [ECHO_G090LF0971530F3B] [echodevice_ParseTTSMP3] DATA   = ID3#TSSELavf57.71.100��`�s��FAɀɧvA�����ɀDDGw?�@��w������_��>��O��""n!=�����������""!� A�]��;����B������������?���� <=�����x<c�� ������b�$���_�8
�r�O�8��7sǀ<G� `�n[�7&b�G ��a�0 ������� ������A�y���������A a�-��~7�&�F2����� �gA�%��F���� ��dϾ4d�n�p̩�x����먤������b�$����8��K���X�q��� ��q��$�cϕ ���Z?�QbC��]�P"�@�ݖlu !��8p��#~r�dj��Ϯ��g!��w��1(��L|�b�"���w9�z��˱���j�����kSFCJ��*�Wǀ�Ԩd�~���b� r.���@�������f����y�� ,q"�/����2J������Y4-PY� ��DU����s�c��9�~�˷o������Zȳ�G ��S�å������t�D[��<& ��Q�����
V��c�P��[K$@�}e�{���*�v��`�%��r�����K��4XcR:�/�U��������������=�zm[P��¤}*�Q�|6%_��D�+�<K�z��R�S�u�����es�R��¨���W��>� ���vT%G�ұ�G����xo�pY���@ �R�r�H�
��.5`U����b�#Jj�p��
@>�G$)����*݉��Zr��
�y���el3�v}�~ g���w��P'2� �0� ��Dv�Lrb/=[�*]���\�˲��?���5t�k�GC��,��v�w3[����[��@ۗ���3�$U@m�w�z�ڝJJBD��(,�g��b����DyX�Z>3U�Q�D���n�,�6K_�Q0<k �Md�$����Te%�f-�:>J�Kִ���y����4�D�(�"��
��`�/������-`���a��|D���A_�@aa^�/��w
26���ڤCU� �q�6�dB0$u�`a���o���b�,j�~ySl��w�wp �yYX���İ'@ �ӎ�,Gl�(v���W���n�<yF
���TVI��:�VI3�i �آ�.���yt���V�����?�cR��h��tdT������*��-[H����
�x�ҽ����~�����K:���������`�? ��a��E�ӝ��" �FJ���G8y�AS5�[�����=u{5+��Y?�*Κ#�ei��H�FԆ1�������E���]����$��s ��Uː�ta�a58���K�����_���'�m��ލ� �4��k2N�P,�8$bAҋ���b�N��ɌXSA�CJ A���2 �IxP����)��ަCS���>;��s�g�[��fP(H¨E1c�V6�ZY�-��} �Egw;Y������^����dD��z�n��oF*��gyAI�@�w��=�"!��#�o�'E��"�%P� �2zF0���b�g+���(�<\��
$Z�+ƫ`��1����`�f�t��#nlT���#�[
a4��Բ��Z�UeСY �*���b �c��( P� �
��ϡ��c!� m��*W��ݟ����K���sP���C~�7��71�ƣ��PB�� �HN�a;����b�zӆ��zD_"�V������� ���d�}aw�������>P����L#c��:��4���t�)L��)J��/�o.i�ܪ���Ծ��4�
��Tu,��K
'�SC������#��aUxU-��:����D�c=*.[v�X�Ξ��n�؜����`Ď��H�xoL�8���B^ԁL;E�0�3�4�� �1 �l� r� �@�=m'0��^ �ZJЄ��,�һh�����Y}�H�V!�C��В2ڽ�W'(�,�W}:���eU�$�`8#ԑ��iMU�j�D�Gd���yw��bġ�j�X�X�L4�@��� ~�5��bi"K��wۊ*{p���a*��<�D.�m���{ֻb~��"���� ��r�����b��?9P�m��`f�p�H�ڞD
LL��$��X�W�s�d� �!]�v)
�L6���-��.���bıQ2�T�����dN�v��X��Dz����6��E�A��h%Dd@�P�P�/C<U���*~Į�%k��ߍ �c��7��.1ۑi���t���]��P��X�)ͫ۔��� �j��AUi ���Mw�^�R͓A �74R_W�����b�� 2V�>3��I�W,�ZF}m�e?�̧uy�'�)��u1
r�_�������#_��,�fP�`r*��vӤ~�}Eԏ)�.�$s�2������>��k�ݠ���il�)��`9e g39�n�̭��vWPn�����Eb�6sUoZi��O��`����Vx��Idt�zH��5?=<QW��(t���h��qC��<m�sʏ�F���������!�qA����������9�Kd�� ��u+��c���>†b;֭�z>�cZ���,ᘉ�M�X8�d����k��n~��_�q�y��}�X�������b��+ �������X����f;�pW0���(�"�l����7�����$�%�F�bѫ�5�.j&i�Y�瘿�����X��g0
��`V(�ѰLc�
��*�$��S;��p��@�X�Uҁ��QU��N�a!�Mmt�E�͋??Y���eٯ4��b��&J֝��м�浝��ج%=�cN��!�л�`�R{Z��j4�c=L� �s
r�
[�򼹝K�(�J�տ�Ρ\ΆGc)���gyd����۪Q��Sڒ5�cV94��ϛ�4�6h�J���L���<i��*Xhyctz��$`�����`��$[Έf��B ΂�,���0�*����\�Ho����dh��c�8�h��e-z�=��S��R
�-J8Q����̪���V�a�Q3��6*$�Ppbf6,
�b�&U&N�f�!�H�&�0
ŀC�(a]�+!ӱ�"pԺb��bĿ KҮ_X( hu�)Ak!���;&.!PH�
p�d����Hc��'��Q��2U'͐@�i&���St5����7Q�S5�鹙��l��44��D�|���>���EfjE����I� ��±�S�&*7H��1��.��8�Qϙ�hh��Y����b��;�Tѝ�<`oSIR�&���K�[����QD�;��\��*$FEg�v�ݜ�F�0R��\R'0
!<�G��qP
���.���*`h�,4�ɘ��T|oT��贲�I �a��U�Ǽ�@W�B���C�z�w�t��
J���:�xq�C�,��b�p9�����y/<zG���g�TP! �d�Ԉ@�,Q�����^�����|�Uf��Pt� �)�k�\y��%�!��z��)�ٵ93_��1MY�N���yڍ�vy"c]������S��|v���j�pbg
fZd��
H�K��(�O���?m0��`�"S����(��X!� �r1����ALFl�aC� 8����$9N(ڈ���D�S(¡L����mvR��qeo��+|Ґ�u�"�uB�AP�A#��)M�?����������Ow��⭓��Q_�*F�V��R��Z �S�Ȗ�K��I 6Oڙ�(߹��b�������\�[ټ���ܠ�Ev<�8��]T�7�a0R�1��u�7���פO��v�'&J8�?����+���1(����Hh��O���oC̥�ޱ�2��~JO6���(�y���2u�g��v��pe��T��._V/+v8����o��b�. ���N�
��b��jf����Rq�k*4�L�b�3ǎ���.�Q�'�SWo���ƈ!*�s�jg�zUstGT����.���X�ᑀi����mp���mC�� @� (�_$ q�
�A��@_]�0���wW_��k��b��jG%k@��b�;2~��y� ��N���Č�x�,"c �7���� �a �t����3u<I�lM��׽$T���JA�YEQeN��}@�0&�6�Uz�͐n�%I:���
%̞2��2��x^+)Ӝ���i�*�SZ�Z -#󶃆�a�JfVZ͕��kT���`�Nz��z�!� �m������"r�A:�(Š %
n�?��K���'�
�gh�)�����UNOa�&��R�*��N�S Z�B����( +

D{�P���R����
'V�+z9e�h��)jU)U[�ܥ�f�1��gAI:0�������b�h
��O���%���L��G��A[s��$�a ��"�$��9����%� ��ݛ�[I��,4k`S��w��5pԒk��JWű�@+*�G�f���1���܅���V:��i��b�X�ǭG�l����K���� A�����/�X�ܬv|���bă;�_�x]�,]�ԁ��N(!��VBCЁ�`��5 �n�65JA���-�k���
h\�qƴ��-�/�����������������#�5"X�������J�Wz?��
̧'��٨��_�������+2}�����~�]�0����b�'"��ѕ�@\}E�-)߽W��2� Ҙ�@l���!�z�p0EbPG�C��y�"� Y�a���U F��,Y�Ë<��2��4p���r5s-��8Y`me- :�;*�D���!�
��=�À$�J�80���M7��:��gA�E�Rh� ����`�,���vy�xd@���) �Ć$Q��17R�����B���^��4���Ž�����$,"1ZQ@��GR�݈�#����t�e���jtܷ��� v[k��ެ��c�0�F,qָ ,�2F j���7IJĊ���jXY�,�$9+��YV���b�CҪ��Čb23�eBi%M[��*��+�#i�����
��o+Y�b0�T�;�ϫ��j��ފ*���g�d�k�Wm��I4'� :�n"��"#E�p��`N#{�d�͏@�ӷK�N�OY������Aʃ�B��3��z6��N�͠���w����b�[b���
� ��}_VUT3<���M�"��?��H����I��Hʯ�n���z�v^�i��%qlȉZ` ��^�\�Qx�U��'�
NM��-R7��h�,0�L&��
3��k�!Mq�@w��%��6_��k�k���������8�������`�m*ƾ_X@L,�w���&�-]cL\� Фĉ@M�S'�-ہ�2�~0  4ܓM90EӶ���pCMT�d{�
8�Q�_�#!����Sً̭�ޛT�畧�'%� wSF�B)�Ň�,H���[U\]5܌�pn�J}Ve�F��d��b�;:x����C��j�y�v�
Z��9�ީ RW���n�'=�Քމ�w��ru�jf�����^޳�O�'s�Ko��������������Y�����?�T�>c��冂a�RE�!.Ӓ�I������h��p���FPBH$fil���EK��b�"(S6�˘�x�`J�$�K(�e�d� �z!�i`qb�>?�㸊������A��a EB��G��@H��B
���|�E"Dy9N�5�s��h��[&d����RԊ?j�I4_B�?�_��o�n�5=�7�{_� I]�i�B�fI�-��b��n�_�(L'�X*�M��V�����!�"u��9�qr:���EDP� �8��1���h�\E_��G++��J�N�d�Q �FZ���>��U�����Ȇ&����u7���8��xaW����7P���h��f�u�q�2ؿ|�Y�?'-�S�.eP��`�!�>����\�@��7���V��.˔��ʦ��G8��
�(K_���%�?�,�%U��V����=i�!e��/��PL�� �A'�З���G��R��p�N�0#���i�ڻ�[1��ʦ��i�� �>�=gf+���;3;呗�«�8���@��b�4�r�����j���O�pbv $��s:��ތӺ�2ЅC��g��}��F��܊�]Ї����gf;�r��vTA��׮�שl�%
�솿�D��R�b}
ݓ��������d�o��L������4 ��#�H� 2��2|Fݧ ��ԙ# D���b�D��ɔS�}b%J���y�A4 � �i.G-�!G4��dnrNo��z�m'9�](���I҂��;
g�T�[\�p!b9GJAV������35���aJ�a)��;z�y��8W�?������������Ѱ�q�
�������}R
،wZln���b�U���@M8T��<��7�M���=�
C �8��XE��ڐ�/��h��xwkm����!>A�u:{�O�������-=|L‹kK�jQp=�C��j `A
Ց�o���I)���g��T�?_��Rg��VFm��;�Q�G���������R�oNJ���`�m ��x�?B���=�4R��omϑ��h���km�A��X@
T��,4C �� �4�L�tS? �V�����뫅ko1�ߨ<��K�ކw* 3Q�$t
P4#���yY��ҭb/�����kJ�L�7����
��5#d��D�N��u�K�
���b�2����Ě���š�M �;D4���]����Ct��M�6S�DBo�!h�@J����g/�X1��-�9�U}l��ڥ��2���cV�o�+")L�P�*T1����EeAK��F� ��@A��,T�$� h��J'l�� ��AZ-C$dbibG�"��bĖ�&�\y��E�3g�.�B��Q5"B�T� �d ���l���\�'�i����w�g����7?��� �`'453j�4����N��a� r�h��
�o� -������ʤ��^3� ���ɓ� _ ���b�am��� Z� �b�o��bī鲒V�V�N�̑����'�T��2���,D�p�8_�٭����2�"�!fmt��A��������w��Z�~�@���h"�@����8�Au
U�R���;z�VE^��
�o�Ҽ%���?Qx�-�n��v���f�?uq�y_�! �L�79u���`Ļ����G!�Y�r�s ;ՎG6no���RQ6���{~Ί�b�����n�dF�0b���
!�����
@{#�nƝD��˜��t�z��ܚ�.]��R(������m��R}O��1蘒٫��|�Ұ�.��z�:�����X����7L���ůr���b���Ѿ~*��o�����ݭ��Kޚ���:��U$E����X��eB��@$@�+��(��O���-�"�D}�0H>��14�"�L�9� ��i<Ԃw�' ��B: �� 䊓A�Ia''H�$�L�����h�����G�)�9��b��!��7[xP����E�po�XPDX�+�,3��D�,CJKj'�%��0^6' �w:R&�%�`̚�"d�d���A
Œd�� �t̂�H���B�"���$�Ti�OZN���l�'m�������.!��]0R�b(}2�"O�N����'O���J9��`��?�hU��g.��H�0@ƳG2�CtE�h��YD�f���b������Հ݂je��$(�ح�ΤN�;����ge���:����J۽�d���!Y�*������h(��d!n*/^�5����ƫT��FI$��tH��b�w���?��.��x��bā;��xN�<L ��Vw��d0Y��;�ֵb~�n�[��o������oQ�D�VxIJ-�s��D�D? �S�pU-�l��#��������X��D�)��x��/���x�x�F��&��/y*�$�F�BA���m�~�v�����r�^W˥��|-��b�$%����@��ȳ3���Z=�n�XכP��'�㎘�͗�Q��J�����Pp�_]��K���ab��aa�V+�&Ш��-e=Z��4P�r@|X
��Q� <Z�֦$�
�������İ�����m�H'��)��.���&�ll�0�N����b�&�ֲL�ELś��@1�
�/>%� �I���Gׂ �o�Z�[��H��+�"iG"X0A5�����5/f�^]�h�{��
�Q��5����q �P9Y�*t
sT,(Ge�z
�X:sO��
�����b�&R\r�$�8Gڒ�2�F���_7���`� �Ʊ��E�KWVU�����y�F ��?�TL2f|�1,o&�"����X�����?�����:��~VC���2�
^��P8��9w�B}.&����e^�q��\���j�B�[�g�`i�a�Z�1�a�=Oq��b�ζ&���?|Ɍ8���mv87�bW��n��4�bf��nEXB-�w����r�m���չ11��t���8��2s�ʧ�'D@��v
��AA�� 2j�dv�q�e�u���!
�s�;����k�1�8��^�)���ϲ��ҏo��h�M��T��b�1�ɄQ�TH) ݲi�"���4�x��8 �A5B� ��9���fh� $�6��H����bg�PQ��JbN?���)8��*�mR)�9f�{L�cS_���ٍ2K��������w1�NB+ynH�$�^a���>L�j"N��e�!�B��b�A��V_�0�"��X��R����r�!0�H���d���N��q4�!N8�n���v�ު�|���"D�
5��Uk;D�I�=y����^R[M����+����v������vJ� [2�
�g�-��E�_#����/���z����s�����`�^���F0I�5�
bB���� �]�]������U
ݬ6TP��O�K���3������;C�>y"|��b�%�S�p�$l�o!�!2��H3����e��S�I2?�Ä#�0�N2��t�����k.����s�t��[�Vd�]Lo!{,Od��b�r5�h�x�]W���&goc�4Eb�P�W'k)�<��΄�I�
t���֙_���H��<���^,Dm��
/�o�ռ�>��W�U�%��֍��]��?�������&HR�ٳ}:�j9
`0 ! wJ'W�n�/:����f�n��`���m��b�.+��_�XPtŁÍ�2��q���Ϟ-���ɓ �� }�
���u'�Щ����y��� ; =��~O��l�K��۩�n���y�&o�@��g|O�{�KQ�o�x��^pҋ=dϧ{\���{c����3��ū������ (gL����b�J��+�@ivs�\�λp��3E���Ai�(tY���m?�Mv�}�����3S����ݬK������e{��u

���,� �����
�9^��l15�`hk����6�+}l��������h)�%]�O}��ܪK�҉�5�*`<%GK3dY��EI��`�)D��2 �\�
�eN��o���Ɛ�_vD.�Ii>��*Y�V���ޯ��M�g+���28�k �3��{'��ڮ�v=�����?E��Eew(���(��dz�}�^ VYs:@Oo�B]�|~�x�hre�a�&=ӱ;rȰx(��q���ؠ
�(e����b�;;V�T��"��B�Ї;�N��򫵙wgMueW3>�TtB@@%�dW��/5K��^������b�{�� �1���#I�A�_ݵ@(�T=6�@k�˙�j�I�9Me��a�Φ&�q�L�\���lr
D��M�' v ��EQqᅺn9S� ��b�N�f����bZhb�[m�o~SlB�����2?���hb3ٓ��������^؆�>�{-ɩ�*��
.T+/*>G�`��dž�,��d�ԇi#e���^�d���w�}���^R8:�K
�w��[H�r��t% L�j���!}���O�klc��b�`b�����SU�������������j�O��Pb����`Mƽ�J�A�)DC�O՝�>WǷ�x��d��m2��)U�Zx�_���(�
c�V���`���iԚ�1�2JV�?D���̌���C!&DV������6�nJ�Vb!��"`�c���`�v3v�Vz��Z��e� ��vJ�;vðl��÷�V#v�.��e�P�C���\�H���\ؘ��o�4��H�C��l!>�����w��pt�(��I���uC���w��r��� ����c� :>�V����ކ��X��R���bĈ �^`���Ъ��m��Tk��ji؄ѓfhlRGVy�\Šb�2|�uQFF�{+0�1�(�� �U>ý�GR#� (@HR�w��E+�K|AC� SA�/��������$(+�¤ɪ�����
6Q���Q]�sE�n�f� `Pe���bĘ
��\IE�on4X�m�i��F0_08�ǡ�@ȱ��)�g�koUU�w �k �tZ��0Y���6dd�-Y]}M�LdX6�/<<������R�M��CSiE}V{L0`1�Ȝ��@�UY��̮�0�ɲJ,t��)0��Ym
� ���`ī*�ZJ��0��?�ꪚ��+�����ȩ������*[<*�)�AP��D��!*��w��J�pҖ�� AE9�,eD���+��RaYY���?���hP�"e�dJ����l����!�.Ǩžɤ~��N�C��KE�����F��b��Ij���FTTDp\&ïS�~T��Tku6z��6U y����w�N|,2d��Y 6yufd��J.3� d��G���8*7WsHt��\� *����?���g��C/ �,/�oO�j�� �?�N� ��{�J�~F���UVy� X JL���b��aZx��P(~D{n��z�/2�S���7��,��� ����b4%ȟ_����-�Y�`�q��ဥr��@���� d�fʑ[�������a�u�P��&��r�]�boQ�]g�)S�A�5��#��Tr@�y)ԽR�Nh��M���:�E{^���b��"{�}���y=nd �CM܄lr!hʳٶ�������O�ʤZ^R;����(��<aq��wT*jeX[o�T�;�@d��f��Xb���4�@��EGۙ� e�� �7`��`�&D%���:��b�57U����G�AfL���<g@"�@[C��`��(K�t��KM5�7�1 Lxa B�)���SZa2�])��mflS,=f2&^�-6�x0:� 7x�E��L@A�*�����
"W.�vD",bb�a�O��ٶ m�=�o��4��W�ߥ�o<�y<(!�߬���qq�!��V,T�<��w�p���b��;�Z��X܂����0!�f%N9�8�c1��9�-I�+dPb���`�c#W9T3 2S�c&*�|���l@���0��5"2 �!g
����Y��G�ln��!B���r �1%
P��c��NN����eN�E�X+,+%]c ��bĉ6�y��T[�Z�,�xX�&��g�fe�Ӯλ0�3�f'�d���:%����N�)��������NG����P�s��D=�4��F�KPlx�\L35D�V_/^�(%�ט��R#@rl,p� U�H���+kh��Q���-�C�qe���X�"�%��b�=*� �KPu�.G�y]u�M��s���UQ
�Q�l������,b 6*Q
"F��q����u����Y����T2
��H4&"qw"�����������
¯��"�fag�A"��""ʀF<���xSp�{�Z�8ln�t�ee�J�a������`�$#�^��� P�R�/��f!z�����,��r����n����(o<4����\�}Z�� Hp`��;�� ��C�A`p{������c��3�p@4����~����.�:ْ�0�M)
U��x�R�Ԥ@�\���)��p�J��:lD�8ꬁ��b�#$\�&����D�QA#�ȓOԀf�P�<�,j�*|�|��N/S�0��-(�h�DI�
���b#���N �+C?����1����3�c������b������O�Ҫ���3O4n�*��k��+��'PƬ}�{O(�V[��C�R�Ik��b�! K���P����J�r����&�󤥴����C�<�?���q�xaʗ�Z+H��5 d�$TUH�qv!�ԏ��1T@x��Ap�L�O�����$�)=��o��I�RMgY�-����!���Q($U\�5j�,Y�1���8�*fμV2�8��b�/�f�� Zd���d�W.�;{_���'�^߷�r��[-�����
��s�����ë�V���`w�����H�e��]9S�����o�<��p �R'"�,)D%��� �Az�x)��}�jd& �6v����!��֋t�n��a`-���`�E�N����xχ�D2!������"�&$\���%a�@п���ăP-q�����G,}�j�s��
s��RV����9;t���T�y�%������
��J�fK�|}+2�\xF��\Z+���?v�-Ĭk*)�U�
4 �9��C Y%XAĭ���b�U ^����|�8Aiix�4�$���� �6���� ?�>88����D��b���d��I�*�'i�5��eL(�P��d��6:"G�M1SCi2���+2�_�~�9�;��v㚤�06���Z�&������mF.���MsP0�J ��b�d2��^�q`0020"#��.�&�����$e�s�:�u��]0�<~��SQS�Ye��4F �,�������(�xF*$��?{I~�4I�X����?��c{���<�܊Z�� +@��Y�|�(��^1C��
���sW��Te�-Ie$�����`�()J��^�����~v���X�<� (�3zh�+�u�E_�9��t�l ���(�(���4t��m��T�;I��9��f���ɷ.��xB,PI{���J�7��Rkm b�x:µ%A�A����0Q��C�!�� *��/���X��PJ�s���b�r��6��^Y5!,�r�ѢIcp$�o�:k�%��P�[.o�Be������R��7�B�T(��$˜ߖ�W���U����ꖧ�Y����R$t@p%��"�\�r�C�и�vbB� q*���yc<�0�
���'A#�(� �:*��b�#���\��\�`0i�c�ݕ�2���c����k_\ ii��'����%~�O�z���c!\��ջ#60�ܠ�Ɣ��N� ����N � })Rz�#h�b�b WP��o���+�$����re(�;�֜���W��]0p O/*Z_��b�3J��<�̜i_���TW��J����P�ISdU:V��4鷳뻦��N�Ib(9�εi���EL�R)<�EI"��JȪ�".
�N{W6���6�Hr���3mH�?���+B
N"Ʊ�1
1�
^�P�y9�o͜�J��)�t�=�(Bц� ��`�I!3κ>zK
��\�1��5G�ry��4a��d�2H�űS��Q��C�T/����v����윈��U��n�^�� = ���ᴜ�K�}ƍW��]���� JF�A�s̙���H�48i��kl�^�M�r�������,o"B�� �0����!Џ~B��b�S!d�^�
�j1U�w�Yǿ��������)� G#��������gj��G��R��~J 8Q=~���uʥZ��.�S=�\���6-:���rq�X�7�q�W�r[hM�@���Ņ��,\aS��H�`�qG11�\`u����պ7�'�V��b�]sʩ��ʱɫ|մ��Qwo�������VO��Q��6��Z@�IF(���8f��f�������n�_���ͼ\%Ko�+�Z�"~�"�^��y�[���.�A{܍K�_g�B� ��0�p�eʣ����ϧ����I�܃ͫ���:�SG�����~oT{ν��b�sꪲ6��D)(v]�x� ��H��<�w�J�7l
��Z}j� l{�s����\�E,�
d�d�%*h���������T=Q
"20�+�U��T;=�U������n�[��2j**.(d������s�,�f"���

�ᎅ��m� b��`ċ²�.��|_r�8O��d[�ʩomc���w�MA�i�B�8L�P�w�
bp�zwdھe��!
e��+�g�\��v�΅�7���Jp�gS)��<ڴ�� �����2{���!1���&Մi�\̭���ζ0x�l���u�(�c�2nsO��bğr��N�E�ʁ&�MtcY������.��X="�p�;��j���Y���(Xp�L�v�^�1ԫ���g�uO�Th�L ǿJ=�� ��W�ZTڂƖՀ�F u E��q*�^�%ߜ�*e��`F*�ZF�J��17��Y��Ұt���bĵ�N�L�ɖ
��氧d �:�
5���/f��ߥ��+:%}� c�Pح+��U���b��i�1��J QI����֙ ����k�o��u=L�o��P{�y4פ��G���O�dZ6c��J����3CDɻ�̂�B� a˗��b��zºV���SfV�M�eZ9P�d�<��J���U���R��S��Z� ��Ha��[#�*A��t��01���PJF�!�px���o%�#5V܈�M�S��o�ˎ�ƫ7JO[K�}������Ȯ �l,�B����ة�Ð�b*����?G�_�����`��ʲ���E 3�\rq��+UsV���΂1�c8�jw�s�C�'�����cQ�E��M�F���0��#���U?V���Xԡ
��8�'&W ��Ɔ+��*���V�w��>��uY�Ey��_~�|��fSE�C��Ͽ�����O�^��7_���2��b��$L�V���l���^�v}��Ev_�������iq�-:ӨOԣJ���8�ǜ�k��8.�4ة��
/�aJR���ӥ#��X�����y3J|��M2��"���V(PwXz�k$�����Z�D̫Y䔚�0F�RzHZ�#�̽/|� .�|.�q����b��-��Təld���s��v,���—o.jzN+L�/��e�v#���-�p�$'�j��U�����A��&�gf����M$ A�F���,�0�*n�0~����&Q�Mz�?�2������n������q�8�Z����L�
�߱�!\�~�3Uk����`��&4�H�<ʭ��{z�!��B�H��2׭�V]�vҋ���_;rwGL��w ����%"�����C
2+>W�.�]���_���3�U�� �|��ew��[d�P\RȚ_�J! b��2�!t|ȼ��a�2Z�v£��ƺ�65lɣ
�mEg#'*��bĻ �0�xG
��7���V{v5~��宺-�V�J����B�H�PjShi�G���+~g�8�Afr������r�u���n?��4+ 7��D%UrƸ�DP<�@�� (�Z�qR��G* �(�J�V�eg,�)Wյ*Q�[�cٌ�5[�c2� ��b��[���H�n���c��R�z����3���G1������߫�F(��
-�8����ت�)2QbO�)�+�k��s��N��b�<�,d��3�Sn�ZiE,�:k���r���u/�TQ��c�������Ln��]Ί�r��V���v;�ı��4��b�����]F(���.��Q��s��/Z��H*]v�{���-������w9���CQi�����CS]�5������͟T�ܗ_�^��-}I�rJ {�0dH+U=�|�@F*�.(t��*뺽�������[Xw7�����}�P��Z���P �I��`��?�, ���e��%��I��f����e�����-�<�!M�FP�o��X�/;�4N� `Z�o�B���>e97��:��Y��)�t�ޫ���� ����d�P�q�B�-��5h�M��gV�j�z|�)9 W �!aTr!T�������t0�d��bĄ;d�_�x�Me��! !J�qgdaC��]<����x�"o�^<Jk���<�E��B�˷[T72Slj��ˬǏ�|k�������6�c:� ��w>g�Kѝ����G�����Z����Xw��\ @�XI�V�i�h��9�Ս�'p��
��3��b�&(���@Sz���EO���b$�q��"��lS�t5��1��
���_���p5�ŝ�9��a_��LjG�&t��� �#?�Z%%Ҁ����qVq�o*������_�32X�,T�ac-����8Z�(��|�:[գ��C�)’
+��g��b�"¶R�PPeP�zlHG�a��kX?�[��-�˗�'�ێH�!���vl&br�!�i%hr��ߴB_�M���6���TO����֪��S\^�+4��T��ʪ���H��4�BT���
��
A��ߝ�� �T�哿G���.����WM ����`�!Z�� �ļ�k �=}�%�,9��dz6)6����%��r�!%ġrY��r��_��X���Y�0c)�;���tTcŜ[��|����2՗WGj�t@Wd���6U�=#��
��u��S4 �� 1n����
�ԩ�0) c��Iç�� Rx��b�"Z���zD����jq��1��䧺=CԗfAe��A�H'��YD����n�A����+���qtjG��G��v˝��z�^���B����t@����Y��O��a D@0̚�&zM�\h�yi�����fs'�s�;{�!���a���6ٜ\U+��b�4�r�,��&,���t���i��T��N?_�R��H�7QBIȬr���뢵�����1MR(�l�g��o�������S�@R Ph˙U+&�:�,*Ajڷ�:%��@{����c��Ʃ�,ahR����Q�� � ��hVB۞eEP���+��b�F�z�4�D�y�F]]k�o��
;A�'�ףQ��>�㱍E*��@tۡ������t�"���lU+�դ�A�P��Z�´wQ�$��\Ǫ��G^�p��2U ��F�6%8qmCI�7���j��(4�osFP>I�u3�3��7Pߜ�{6Bɐ����r���`�Z�z�V�ܭ����r�Wԇ��������d��`���q q�Հ�
�t��^�1uUe�k��ֿHݝk6[�>F`UAf�rGת8휦��DF���ce��95�)��u�+���jX��(�2�������C#�`��'��;�g�����b�n���V��ؔ<"�*PM�[�����Հ�q�9��0Į�HU?�w�ɝ�H� 0�f�UϷ �Xyp�'G}g5#k�����O'���F�'뾛\�v���w��?�F�Etgs�\��� QNJ�(��\�@॰���3�d�g�灄�����b���Tx��*^��q�j�խ)]�U)�s�*_�c���k6��Y�j��f��N�����]]���_���G;�cG���nS�ڶC]�ڭ�h뭙Ӟ_��'D .��*|�4v���2���D��v�����ٳ�윙����!�F‚Z�������bďD��S�@���@�Y�2c���w>0
T+v>�[���k���oT��o�������N��OF?�7gB6�
V�<]J�x�@��pIĭc�ND�����A�ʎƲ�o [���v���)�K� :8�2�M�S�r
��j����,�r_�ð��S`���`Ħ��Y�jT)�jE���=L���Y���e�\���f��ܷ����"k�§����a���?^� D��� �zX8��(GE�����#�1-6;%!�.�T� Ue�c_��$�Ue�Y|"H�T��KP*�zє�N��T�+f0���*Q���bľ��Z@G���R��3�\ߘ���.��*����S:T)7�Q3�K���3BhV{k�����D�*@,�I+�a'u_��iQ��s��f+ƱQ�ԫ��VU���b�:��^g�3�fO��J���C� )P�*�Ρ� :*� 3����b���
�\H�Z�����u�����!i��� @��!�����t�)�C_EQ��!e%H��A�ؠ@ȣ�J�����{# i���a�}����JA���Ԥ�\�e�O����wz�w���^`�v�]�� E�pä��+�1 }3������`��!�zYE(��cn�1H�A��;~���
���w��ϋ�5Rqԉڵ���0�a�ue�(�^3%q�������������E�X�󗾐%&�^_��� �hT+=$�>2��X�c����������?�O����������ň��ÄT�;��b��@�i���c@;7�S���BWd����O�JW2N��e+mÈ�h�z�<��j����>Θ��/s�����63|V�]8��kP�����Z}�^Qr� �ܻ������k��H�׏[kPu�^.���H�l��5�oz�8�|�I.�z�׋O�������b�|:���xdd�� u:�}�t�\�)}TA�OM��*D�` ���ڄ�"�t���v ��b~��g��5��|'گR�UĆ��=a&oxn-�#�{��yKCaOO ���ET'�-�E��Y&���Тz��6�� �p���\N0l���b�#&#š C�h>��TW���HE��������΄(X�(\�,G33333�W��J�.��7+6�A$#�J�59c��5�ffp�U��;f�?8��)�O���D)
����(�#�R�*d�@<[�Yȅ"Y�9 �����E����`�r慌2KD��+U9QY��'z��d-
�� K?����
�����D���gVXtH�����gUm� ��R����˨�����Fr�8h��TyD���dj~.u$�=$ZZF ��ʵmV�������$�Y1=Ǫ�ޯN.`��հ�j�����b�+�T"`E�ND)�ijeXtr{F�=?�^�C'�l���M++[����¦xaJR���`#PʀGe����AC֋�5��@LA$�Tz��`�
�$4�M�z^�����J�2
�����&U�YQ�5e``�G/�����)�e H���T��(``�**��b�K��h`�-���� `aGo�ETR;=?���*�E�uTv1L#�T�jLAME3.99.5����������������������������������������������������������������������������������������������
2018.03.28 21:11:35 4: [ECHO_G090LF0971530F3B] [echodevice_ParseTTSMP3] MP3File     = ECHO_G090LF0971530F3B.mp3
2018.03.28 21:11:35 4: [ECHO_G090LF0971530F3B] [echodevice_ParseTTSMP3] M3UFile     = live18-hq.aac.m3u
2018.03.28 21:11:35 3: [ECHO_G090LF0971530F3B] [echodevice_ParseTTSMP3] MP3 normal. = 5
Can't ignore signal CHLD, forcing to default.
normalize-mp3: ./www/echodevice/ECHO_G090LF0971530F3B.mp3: no encoder available
2018.03.28 21:11:35 4: [ECHO_G090LF0971530F3B] [echodevice_SendCommand]    - type tunein
2018.03.28 21:11:35 4: [ECHO_G090LF0971530F3B] [echodevice_SendCommand]    - PushToCmdQueue https://layla.amazon.de/api/tunein/queue-and-play?deviceSerialNumber=SERIAL&deviceType=A3S5BH2HU6VAYF&guideId=s237481&contentType=station&callSign=&mediaOwnerCustomerId=CUSTOMER
2018.03.28 21:11:35 4: [ECHO_G090LF0971530F3B] [echodevice_SendCommand]    - PushToCmdQueue
2018.03.28 21:11:35 4: [ECHO_G090LF0971530F3B] [echodevice_HandleCmdQueue] - send command https://layla.amazon.de/api/tunein/queue-and-play?deviceSerialNumber=SERIAL&deviceType=A3S5BH2HU6VAYF&guideId=s237481&contentType=station&callSign=&mediaOwnerCustomerId=CUSTOMER
2018.03.28 21:11:36 5: [ECHO_G090LF0971530F3B] [tunein]$VAR1 = '{"error":null}';


Ich habe auch das volume_alarm auf 100 gesetzt aber auch das ändert nichts an der Ausgabe-Lautstärke. Diese kann ich einzig durch das "normale" volume ändern.

Ich habe die aktuelle Version (0.0.32) laufen. Habe heute Mittag die 37_echodevice.pm nochmal aktualisiert. Im Account-Device wird allerdings weiterhin die 0.0.31 angezeigt, keine Ahnung ob das was zu bedeuten hat...
FHEM auf QNAP im docker, nanoCUL per ser2net an VU+, 2x Echo Dot, 3x HM-ES-PMSw1-Pl, 3x HM-LC-Bl1PBU-FM, 6x Sonoff Basic, div. "Shelly Eigenbauten" von Papa Romeo, ESPRGBWW-Controller, ...
Projekte: Smart Mirror in Spiegelschrank auf RPi Zero

michael.winkler

Zitat von: balli1187 am 28 März 2018, 21:14:34
Habs entsprechend angepasst. merklich Änderung gab es keine. Hier das verbose 5 Log

Die Änderung war nötig, damit wir folgendes sehen:

2018.03.28 21:11:35 3: [ECHO_G090LF0971530F3B] [echodevice_ParseTTSMP3] MP3 normal. = 5
Can't ignore signal CHLD, forcing to default.
normalize-mp3: ./www/echodevice/ECHO_G090LF0971530F3B.mp3: no encoder available

Er findet keinen MP3 encoder.

Wenn du an deiner Console folgenden Befehl ausführst

normalize-mp3  --help


Müsstest Du sehen welchen MP3 encoder er verwenden will


  --mp3encode=X  mp3 encoder        [/usr/bin/lame --quiet -h -b %b %w %m]
  --mp3decode=X  mp3 decoder        [/usr/bin/mpg123 -q -w %w %m]
  --oggencode=X  ogg vorbis encoder [/usr/bin/oggenc -Q -b %b -o %m %w]
  --oggdecode=X  ogg vorbis decoder [/usr/bin/oggdec -Q -o %w %m]


Was zeigt das bei dir an?

balli1187

Zitat von: michael.winkler am 28 März 2018, 22:12:43
Was zeigt das bei dir an?
Unten meine Ausgabe. Verstehe ich es richtig, dass kein encoder festgelegt ist?
  Normalize volume of mp3, ogg, or flac files by decoding, running
  normalize, and re-encoding.  This requires as much extra disk space
  as the largest file, decoded.  Note that for batch and mix mode, all
  files must be decoded, so there must be enough disk space for the
  decoded copies of all specified files.

  -a AMP         \
  -g ADJ          |
  -n              |
  -T THR          |_ These arguments are passed as arguments to normalize.
  -b              |  Run "normalize-audio --help" for more info.
  -m              |
  -v              |
  -q             /

  --bitrate BR   Set bitrate of re-encoded file [default 128]
  --tmpdir TMP   Put temporary WAV files in temp directory TMP
  --notags       Do not copy ID3 or ogg tags to the output file
  --force-encode Re-encode even if file is already normalized
  --backup       Keep backups of original files, suffixed with '~'

  Force output format (this disables copying of comment tags):

  --ogg          Convert files to ogg, regardless of original format
  --mp3          Convert files to mp3, regardless of original format
  --flac         Convert files to flac, regardless of original format

  The following four options may be used to set the encoder and
  decoder commands for mp3 and ogg vorbis.  %m is expanded to the
  name of the mp3 or vorbis file, %w expands to the name of the
  temporary WAV file, and %b expands to the bitrate, as specified by
  the --bitrate option.  The default values are shown in brackets
  below.

  --mp3encode=X  mp3 encoder        []
  --mp3decode=X  mp3 decoder        [/usr/bin/mpg123 -q -w %w %m]
  --oggencode=X  ogg vorbis encoder [/usr/bin/oggenc -Q -b %b -o %m %w]
  --oggdecode=X  ogg vorbis decoder [/usr/bin/oggdec -Q -o %w %m]

  -h             Display this help and exit.
  -V             Display version information and exit.


Woran kann es liegen, dass das volume_alarm nicht greift?
FHEM auf QNAP im docker, nanoCUL per ser2net an VU+, 2x Echo Dot, 3x HM-ES-PMSw1-Pl, 3x HM-LC-Bl1PBU-FM, 6x Sonoff Basic, div. "Shelly Eigenbauten" von Papa Romeo, ESPRGBWW-Controller, ...
Projekte: Smart Mirror in Spiegelschrank auf RPi Zero

michael.winkler

Zitat von: balli1187 am 28 März 2018, 22:32:28
Woran kann es liegen, dass das volume_alarm nicht greift?
Das ist erst mit der neuen Version verfügbar. Ich hatte heute ja nur geschrieben dass ich es einbaue. Habe es aber noch nicht Online gestellt.


  --mp3encode=X  mp3 encoder        []
  --mp3decode=X  mp3 decoder        [/usr/bin/mpg123 -q -w %w %m]

Deine Ausgabe zeigt das der encoder fehlt!

führe mal folgenden Befehl aus:

apt-get install lame


Danach noch mal die Ausgabe kontrollieren. Gib mir bitte bescheid wenn es dann funktioniert.

TomLee

Hatte das gleiche Problem. Das setzen von tts_normalize klappt jetzt nach ausführen von apt-get install lame.

JoWiemann

#594
Zitat von: michael.winkler am 28 März 2018, 23:00:32
Das ist erst mit der neuen Version verfügbar. Ich hatte heute ja nur geschrieben dass ich es einbaue. Habe es aber noch nicht Online gestellt.

Hallo Michael,

ich heute noch mal mit der 2FA etwas ausprobiert und folgendes noch ergänzt:


if ($type eq "cookielogin4" ) {

my $location     = $hash->{helper}{"login_location"};
my $cookiestring = $hash->{helper}{"login_cookiestring"};
my $postdata     = $hash->{helper}{"login_postdata"};
my $sessionid    = $hash->{helper}{"login_sessionid"};

$param->{url}    = "https://www.amazon.de/ap/signin";
$param->{method} = "POST";
$param->{header} = "User-Agent: ".$UserAgent."\r\nAccept-Language: de,en\r\nDNT: 1\r\nConnection: keep-alive\r\nUpgrade-Insecure-Requests: 1\r\nReferer: https://www.amazon.de/ap/signin/$sessionid\r\nCookie: $cookiestring";
$param->{callback} = \&echodevice_Parse;

if ($hash->{helper}{TWOFA} eq "") {
readingsSingleUpdate ($hash, "2FACode", "not used" ,0);
$param->{data}   = $postdata."email=".uri_escape(echodevice_decrypt($hash->{helper}{USER}))."&password=".uri_escape(echodevice_decrypt($hash->{helper}{PASSWORD}))."&rememberMe=true";
}
else {
readingsSingleUpdate ($hash, "2FACode", "used " .$hash->{helper}{TWOFA} ,0);
my $zweiFA       = $hash->{helper}{TWOFA} . "&rememberDevice";
$param->{data}   = $postdata."email=".uri_escape(echodevice_decrypt($hash->{helper}{USER}))."&password=".uri_escape(echodevice_decrypt($hash->{helper}{PASSWORD})).$zweiFA;
}

$param->{ignoreredirects} = 1;
$param->{type}   = $type;
$param->{hash}   = $hash;
$param->{timeout} = 10;
$param->{httpversion} = "1.1";
$hash->{helper}{TWOFA} = "";
}



Im normalen Login ist noch rememberMe=true ergänzt. Im darauf folgenden 2FA rememberDevice.

Das scheint jetzt gut zu funktionieren.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

michael.winkler

Zitat von: JoWiemann am 28 März 2018, 23:31:59
Hallo Michael,

ich heute noch mal mit der 2FA etwas ausprobiert und folgendes noch ergänzt:


if ($type eq "cookielogin4" ) {

my $location     = $hash->{helper}{"login_location"};
my $cookiestring = $hash->{helper}{"login_cookiestring"};
my $postdata     = $hash->{helper}{"login_postdata"};
my $sessionid    = $hash->{helper}{"login_sessionid"};

$param->{url}    = "https://www.amazon.de/ap/signin";
$param->{method} = "POST";
$param->{header} = "User-Agent: ".$UserAgent."\r\nAccept-Language: de,en\r\nDNT: 1\r\nConnection: keep-alive\r\nUpgrade-Insecure-Requests: 1\r\nReferer: https://www.amazon.de/ap/signin/$sessionid\r\nCookie: $cookiestring";
$param->{callback} = \&echodevice_Parse;

if ($hash->{helper}{TWOFA} eq "") {
readingsSingleUpdate ($hash, "2FACode", "not used" ,0);
$param->{data}   = $postdata."email=".uri_escape(echodevice_decrypt($hash->{helper}{USER}))."&password=".uri_escape(echodevice_decrypt($hash->{helper}{PASSWORD}))."&rememberMe=true";
}
else {
readingsSingleUpdate ($hash, "2FACode", "used " .$hash->{helper}{TWOFA} ,0);
my $zweiFA       = $hash->{helper}{TWOFA} . "&rememberDevice";
$param->{data}   = $postdata."email=".uri_escape(echodevice_decrypt($hash->{helper}{USER}))."&password=".uri_escape(echodevice_decrypt($hash->{helper}{PASSWORD})).$zweiFA;
}

$param->{ignoreredirects} = 1;
$param->{type}   = $type;
$param->{hash}   = $hash;
$param->{timeout} = 10;
$param->{httpversion} = "1.1";
$hash->{helper}{TWOFA} = "";
}



Im normalen Login ist noch rememberMe=true ergänzt. Im darauf folgenden 2FA rememberDevice.

Das scheint jetzt gut zu funktionieren.

Grüße Jörg
OK, ich habe es mal so eingebaut. Kommt dann mit der nächsten Version.

JoWiemann

Hallo Michael,

ich möchte noch folgendes Vorschlagen. Bei 2FA ist es fatal, wenn das Modul bei einem disconnect ein automatisches connect versucht, da dann auch ggf. der 2FA Code abgefragt wird. Von daher wäre ein entsprechendes Attribut hilfreich, oder dass bei setzen des Attributs intervallogin auf 0 kein automatisches connect durchgeführt wird.

PS: Ich würde auch die Attribute intervallogin und intervalsettings auf den Bereich 60..[ prüfen. Kleinere Werte machen eigentlich keinen Sinn und belasten Fhem.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

michael.winkler

Zitat von: JoWiemann am 29 März 2018, 11:18:44
PS: Ich würde auch die Attribute intervallogin und intervalsettings auf den Bereich 60..[ prüfen. Kleinere Werte machen eigentlich keinen Sinn und belasten Fhem.
Kleiner Werte machen sicherlich kaum Sinn. Ich will den Benutzern aber auch die Möglichkeit, kleiner Werte einzusetzen, nicht nehmen.

Zitat von: JoWiemann am 29 März 2018, 11:18:44
ich möchte noch folgendes Vorschlagen. Bei 2FA ist es fatal, wenn das Modul bei einem disconnect ein automatisches connect versucht, da dann auch ggf. der 2FA Code abgefragt wird. Von daher wäre ein entsprechendes Attribut hilfreich, oder dass bei setzen des Attributs intervallogin auf 0 kein automatisches connect durchgeführt wird.
OK, das schaue ich mir mal an.


JoWiemann

Zitat von: michael.winkler am 29 März 2018, 11:57:18
Kleiner Werte machen sicherlich kaum Sinn. Ich will den Benutzern aber auch die Möglichkeit, kleiner Werte einzusetzen, nicht nehmen.

Grundsätzlich ja Ok, da die Attribute den Usern gehören. Ich kann mich aber an ein Modul erinnern, wo man auch kleinere Werte eintragen konnte und das dann zu einer Unbedienbarkeit des FhemWeb geführt hat.

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM

JoWiemann

Hallo,

ich habe mehrere RPi mit Fhem laufen. Darunter ein Test RPi. Lasse ich das Modul auf zwei Fhem RPi laufen bekomme ich immer wieder ein disconnect wahllos auf einem der beiden Fhem RPi. Läuft das Modul nur auf einem Fhem RPi scheint alles stabil zu sein. Hat jemand von Euch ähnliches beobachten können?

Grüße Jörg
Jörg Wiemann

Slave: RPi B+ mit 512 MB, COC (868 MHz), CUL V3 (433.92MHz SlowRF); FHEMduino, Aktuelles FHEM

Master: CubieTruck; Debian; Aktuelles FHEM