[alexa-fhem | Generell] Alles zu Installation und damit verbundenen Problemen

Begonnen von prodigy7, 09 November 2016, 19:42:01

Vorheriges Thema - Nächstes Thema

justme1968

wenn du den skill neu anlegst bekommt er eine neue id die du um config.json file eintragen musst.
hue, tradfri, alexa-fhem, homebridge-fhem, LightScene, readingsGroup, ...

https://github.com/sponsors/justme-1968

heuckmann

Ja ich weiß - habe ich auch alles gemacht.

meinst Du der Token Error könnte aus der Richtung her kommen? :-\

heuckmann

...ich werde vermutlich nun nie herausfinden was nun genau die Ursache war -
ich habe gerade eben (mehr eigentlich aus Ratlosigkeit) noch einmal die Gerätesuche gestartet...

und die Geräte sind erkannt worden!!!!

Immerhin beherrsche ich nun jeden Step fast im Schlaf! ;)

Vielen Dank an alle die mir mit viel Geduld und vielen Tipps zur Seite gestanden haben! :) :) :) :)

Martin

derthom

Hallo Ich habe das gleich Problem

2017-09-20 16:40:11] using /root/.alexa/config.json
[2017-09-20 16:40:11] ---
[2017-09-20 16:40:11] this is alexa-fhem 0.3.4
[2017-09-20 16:40:12] Fetching FHEM devices...
[2017-09-20 16:40:12] [FHEM] starting longpoll: http://192.168.201.200:8083/fhem?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON&timestamp=1505918412191
[2017-09-20 16:40:12] Server listening on: https://:::3000
[2017-09-20 16:40:12] [FHEM] longpoll error: Error: read ECONNRESET, retry in: 5000msec
[2017-09-20 16:40:17] [FHEM] starting longpoll: http://192.168.201.200:8083/fhem?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON&timestamp=1505918417483
[2017-09-20 16:40:17] [FHEM] longpoll error: Error: read ECONNRESET, retry in: 10000msec
[2017-09-20 16:40:27] [FHEM] starting longpoll: http://192.168.201.200:8083/fhem?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON&timestamp=1505918427561
[2017-09-20 16:40:27] [FHEM] longpoll error: Error: read ECONNRESET, retry in: 15000msec
[2017-09-20 16:40:42] [FHEM] starting longpoll: http://192.168.201.200:8083/fhem?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON&timestamp=1505918442601
[2017-09-20 16:40:42] [FHEM] longpoll error: Error: read ECONNRESET, retry in: 20000msec
[2017-09-20 16:41:02] [FHEM] starting longpoll: http://192.168.201.200:8083/fhem?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON&timestamp=1505918462653


hat jemand eine Idee?

MadMax-FHEM

Der Fehler ist nicht das von dir rot markierte...

alexa-fhem kann nicht auf dein fhem zugreifen...

Config.json richtig?
IP?
Http/https?
User/passwort?

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Shadow3561

moin,
ich komme auch seit 2 tagen nicht mehr vorwärts.

habe mehrfach ales nach wiki installiert, aber alexa findet keine geräte.

anbei die letzte zeilen aus dem AWS-Log
Zitat
15:32:42
START RequestId: 70e425e2-xxxx-yyyy-8e18-dfbd64de4390 Version: $LATEST

15:32:42
2017-09-23T15:32:42.872Z   70e425e2-xxxx-yyyy-8e18-dfbd64de4390   [DEBUG] Discovery Request: {"header":{"namespace":"Alexa.ConnectedHome.Discovery","name":"DiscoverAppliancesRequest","payloadVersion":"2","messageId":"09cf5201-b906-4128-8807-72836adfdbe3"},"payload":{"accessToken":"Atza|IwEBIPj6YlhQ9IlbV9EBJjXn2112FMna-o02ItrOMnhtiJz2xxxxxxxxxGdok92v_StO_fDTJioYEWDxtVwZ6NTnZMPuqxxxxxxxJY_mUs97PBq1ImJSQxT

15:32:42
2017-09-23T15:32:42.872Z   70e425e2-xxxx-yyyy-8e18-dfbd64de4390   [DEBUG] Discovery Response: {"header":{"messageId":"38A28869-xxxx-48CE-BBE5-A4DB78CECB28","name":"DiscoverAppliancesResponse","namespace":"Alexa.ConnectedHome.Discovery","payloadVersion":"2"},"payload":{"discoveredAppliances":[{"applianceId":"unique-id-for-non-dimmable-bulb-specific-to-user1","manufacturerName":"SmartHome Product Compan
2017-09-23T15:32:42.872Z   70e425e2-xxxx-yyyy-8e18-dfbd64de4390   [DEBUG] Discovery Response:
{
    "header": {
        "messageId": "38A28869-xxxx-xxxx-BBE5-A4DB78CECB28",
        "name": "DiscoverAppliancesResponse",
        "namespace": "Alexa.ConnectedHome.Discovery",
        "payloadVersion": "2"
    },
    "payload": {
        "discoveredAppliances": [
            {
                "applianceId": "unique-id-for-non-dimmable-bulb-specific-to-user1",
                "manufacturerName": "SmartHome Product Company",
                "modelName": "NON-DIMMABLE BULB MODEL ABC",
                "version": "1.0",
                "friendlyName": "Smart light",
                "friendlyDescription": "Smart light bulb from SmartHome Product Company",
                "isReachable": true,
                "actions": [
                    "turnOn",
                    "turnOff"
                ],
                "additionalApplianceDetails": {
                    "extraDetail1": "optionalDetailForSkillAdapterToReferenceThisDevice",
                    "extraDetail2": "There can be multiple entries",
                    "extraDetail3": "but they should only be used for reference purposes.",
                    "extraDetail4": "This is not a suitable place to maintain current device state"
                }
            },
            {
                "applianceId": "unique-id-for-dimmable-bulb-specific-to-user1",
                "manufacturerName": "SmartHome Product Company",
                "modelName": "DIMMABLE BULB MODEL XYZ",
                "version": "1.0",
                "friendlyName": "Dimmable light",
                "friendlyDescription": "Dimmable light bulb from SmartHome Product Company",
                "isReachable": true,
                "actions": [
                    "turnOn",
                    "turnOff",
                    "setPercentage",
                    "incrementPercentage",
                    "decrementPercentage"
                ],
                "additionalApplianceDetails": {}
            }
        ]
    }
}


15:32:42
END RequestId: 70e425e2-xxxx-yyyy-8e18-dfbd64de4390

hier meine config.json

Zitat{
    "alexa": {
        "port": 3000,
        "name": "MyAlexa",
        "keyFile": "./key.pem",
        "certFile": "./cert.pem",
        "nat-pmp": "192.168.1.14",
        "nat-upnp": true,
        "applicationId": "amzn1.ask.skill.3a4e6a88-xxxx-yyyy-zzzz-b2d3-2bd9cd8996f9",
        "oauthClientID": "amzn1.application-oa2-client.xxxxyyyyzzzz"
    },
   
   
    "connections": [
        {
            "name": "FHEM",
            "server": "192.168.1.14",
            "port": "8083",
            "webname": "fhem",
            "filter": "room=Alexa"
        }
    ]
}

wenn ich in der alexa app nach neuen geräten suche, werden 2 devices gefunden, diese kenne ich aber icht und kann sie auch nicht ansteuern oder Ähnliches.

Meine Ip ist aus dem Internet erreichbar

Zitatconst PORT=3000;
const HOST='xxxyyyyzzzzz.myfritz.net';


// entry
exports.handler = function(event, context, callback) {

  console.log(`EVENT: ${event}`);
  console.log(`CONTEXT: ${context}`);
 
  var post_data = JSON.stringify(event);
 
  var options = {
    hostname: HOST,
    port: PORT,
    //family: 6,
    //path: '/',
    method: 'POST',
    rejectUnauthorized: false, // accept self-signed
    headers: {
      'Content-Type': 'application/json',
      'Content-Length': Buffer.byteLength(post_data)
    }
  };

  var request = require('https').request(options, (result) => {
    console.log(`STATUS: ${result.statusCode}`);
    console.log(`HEADERS: ${JSON.stringify(result.headers)}`);
    result.setEncoding('utf8');
    var body = '';
    result.on('data', (chunk) => body += chunk);
    result.on('end', () => {
      console.log(`BODY: ${JSON.stringify(body)}`);
      callback(null, JSON.parse(body) );
      return;
    });
  });

  request.on('error', (e) => {
    console.log(`problem with request: ${e.message}`);
    callback(null, createError(ERROR_TARGET_OFFLINE) );
    return;
  });

  request.write(post_data);
  request.end();

  return;
 
 
'use strict';

/**
* This sample demonstrates a smart home skill using the publicly available API on Amazon's Alexa platform.
* For more information about developing smart home skills, see
https://developer.amazon.com/alexa/smart-home
*

hier noch die ausgabe beim start von alexa im terminal
Zitat
pi@bananapi:/media/pi/NAND/opt/fhem/alexa-fhem$ ./bin/alexa
[2017-9-23 18:41:59] using /home/pi/.alexa/config.json
[2017-9-23 18:41:59] ---
[2017-9-23 18:41:59] this is alexa-fhem 0.3.4
[2017-9-23 18:41:59] Trying NAT-PMP ...
[2017-9-23 18:41:59] Fetching FHEM devices...
[2017-9-23 18:41:59] [FHEM] starting longpoll: http://192.168.1.14:8083/fhem?XHR=1&inform=type=status;addglobal=1;filter=.*;since=null;fmt=JSON&timestamp=1506184919974
[2017-9-23 18:42:00] Server listening on: https://:::3000
[2017-9-23 18:42:00] [FHEM] Checking devices and attributes...
[2017-9-23 18:42:00] [FHEM]   executing: http://192.168.1.14:8083/fhem?cmd=%7BAttrVal(%22global%22,%22userattr%22,%22%22)%7D&XHR=1
[2017-9-23 18:42:00] [FHEM]   executing: http://192.168.1.14:8083/fhem?cmd=jsonlist2%20TYPE=alexa&XHR=1
[2017-9-23 18:42:00] [FHEM] Fetching FHEM devices...
[2017-9-23 18:42:00] [FHEM] fetching: http://192.168.1.14:8083/fhem?cmd=jsonlist2%20room=Alexa&XHR=1
[2017-9-23 18:42:00] [FHEM] alexa device is MyAlexa
[2017-9-23 18:42:00] [FHEM] MyAlexa is switch
[2017-9-23 18:42:00] [FHEM] MyAlexa has
[2017-9-23 18:42:00] [FHEM] homebridgeMapping: #Characteristic=<name>=<value>,...
On=verb=schalte,valueOn=an;ein,valueOff=aus,valueToggle=um

Brightness=verb=stelle,property=helligkeit,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

Hue=verb=stelle,valuePrefix=auf,values=rot:0;grün:128;blau:200
Hue=verb=färbe,values=rot:0;grün:120;blau:220

Saturation=verb=stelle,property=sättigung,valuePrefix=auf,values=AMAZON.NUMBER
Saturation=verb=sättige,values=AMAZON.NUMBER

TargetPosition=verb=mach,articles=den;die,values=auf:100;zu:0
TargetPosition=verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

TargetTemperature=verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=grad

Volume:verb=stelle,valuePrefix=auf,values=AMAZON.NUMBER,valueSuffix=prozent

#Weckzeit=verb=stelle,valuePrefix=auf;für,values=AMAZON.TIME,valueSuffix=uhr
[2017-9-23 18:42:00] [FHEM]   executing: http://192.168.1.14:8083/fhem?cmd=%7B$defs%7BMyAlexa%7D-%3E%7B%22active%22%7D%20=%201%7D&XHR=1
[2017-9-23 18:42:00] [FHEM]   executing: http://192.168.1.14:8083/fhem?cmd=%7B$defs%7BMyAlexa%7D-%3E%7B%22alexa-fhem%20version%22%7D%20=%20%220.3.4%22%7D&XHR=1
[2017-9-23 18:42:00] [FHEM]   executing: http://192.168.1.14:8083/fhem?cmd=%7B$defs%7BMyAlexa%7D-%3E%7B%22active%22%7D%20=%200%7D&XHR=1
[2017-9-23 18:42:00] perfectOfVerb:
[2017-9-23 18:42:00] { stelle: 'gestellt',
  schalte: 'geschaltet',
  'färbe': 'gefärbt',
  mach: 'gemacht' }
[2017-9-23 18:42:00] verbsOfIntent:
[2017-9-23 18:42:00] [ OnIntent: [ 'schalte' ],
  prozentIntent: [ 'stelle' ],
  HueIntent: [ 'stelle' ],
  HueIntentB: [ 'färbe' ],
  SaturationIntent: [ 'stelle' ],
  SaturationIntentB: [ 'sättige' ],
  TargetPositionIntent: [ 'mach' ],
  gradIntent: [ 'stelle' ] ]
[2017-9-23 18:42:00] characteristicsOfIntent:
[2017-9-23 18:42:00] { OnIntent: [ 'On' ],
  prozentIntent: [ 'Brightness', 'TargetPosition', 'Volume' ],
  HueIntent: [ 'Hue' ],
  HueIntentB: [ 'Hue' ],
  SaturationIntent: [ 'Saturation' ],
  SaturationIntentB: [ 'Saturation' ],
  TargetPositionIntent: [ 'TargetPosition' ],
  gradIntent: [ 'TargetTemperature' ] }
[2017-9-23 18:42:00] prefixOfIntent:
[2017-9-23 18:42:00] { OnIntent: undefined,
  prozentIntent: 'auf',
  HueIntent: 'auf',
  HueIntentB: undefined,
  SaturationIntent: 'auf',
  SaturationIntentB: undefined,
  TargetPositionIntent: undefined,
  gradIntent: 'auf' }
[2017-9-23 18:42:00] suffixOfIntent:
[2017-9-23 18:42:00] { OnIntent: undefined,
  prozentIntent: 'prozent',
  HueIntent: undefined,
  HueIntentB: undefined,
  SaturationIntent: undefined,
  SaturationIntentB: undefined,
  TargetPositionIntent: undefined,
  gradIntent: 'grad' }
[2017-9-23 18:42:00] alexaTypes:
[2017-9-23 18:42:00] { light: [ 'licht', 'lampen' ],
  blind:
   [ 'rolladen',
     'rolläden',
     'jalousie',
     'jalousien',
     'rollo',
     'rollos' ] }
[2017-9-23 18:42:00] roomOfEcho:
[2017-9-23 18:42:00] {}
[2017-9-23 18:42:00] fhemIntents:
[2017-9-23 18:42:00] { FHEMgutenMorgenIntent: 'gutenMorgen',
  FHEMguteNachtIntent: 'guteNacht' }
[2017-9-23 18:42:00] [FHEM] got: 6 results
[2017-9-23 18:42:00] [FHEM] EIB_0102 is light
[2017-9-23 18:42:00] [FHEM] EIB_0102 has
[2017-9-23 18:42:00] [FHEM]   On [state;on,off]
[2017-9-23 18:42:00] [FHEM] { reading: 'state',
  valueOff: '/off|A0|000000/',
  cmdOn: 'on',
  cmdOff: 'off',
  device: 'EIB_0102',
  informId: 'EIB_0102-state',
  characteristic_type: 'On',
  log:
   { [Function: bound ]
     debug: [Function],
     info: [Function],
     warn: [Function],
     error: [Function],
     log: [Function],
     prefix: 'FHEM' } }
  2017-09-23 18:42:00 caching: EIB_0102-state: off
[2017-9-23 18:42:00] [FHEM] FHEM.Alexa is switch
[2017-9-23 18:42:00] [FHEM] FHEM.Alexa has
[2017-9-23 18:42:00] [FHEM] FHEM.Alexa.DOIF is switch
[2017-9-23 18:42:00] [FHEM] FHEM.Alexa.DOIF has
[2017-9-23 18:42:00] [FHEM] ignoring FHEM.Alexa.Status
[2017-9-23 18:42:00] [FHEM] no device created for FHEM.Alexa.Status (dummy)
[2017-9-23 18:42:00] [FHEM] Fussbodenheizung_Bad: no service type detected
[2017-9-23 18:42:00] [FHEM] no device created for Fussbodenheizung_Bad (dummy)
[2017-9-23 18:42:00] [FHEM] MyAlexa is switch
[2017-9-23 18:42:00] [FHEM] MyAlexa has
kann mir evtl jemand helfen?

edit:
noch etwas.
wenn ich die linux console beobachte passiert beim suchen neuer geräte nichts,
wenn ich aber die url im browser übers hamdy aufrufe kommt fogende meldung

Zitat[2017-9-23 18:59:45] ERROR: SyntaxError: Unexpected end of JSON input from ::ffff:109.47.2.3
[2017-9-23 18:59:45] ERROR: SyntaxError: Unexpected end of JSON input from ::ffff:109.47.2.3

mfg

Shadow3561

So,
habe es hinbekommen.

Mich hat das Wiki ein wenig verwirrt, wo es um den code in der lambda.js geht.
Ich habe diesen Satz mehrfach gelesen, je öfter, desto verwirrter wurde ich.
Dann habe ich immer den Code aus der AWS-Config in die lambda.js geschrieben, aber man muss den Code aus der lambda.js ins Codefenster der AWS-Seite einfügen.

Es wäre gut wenn der Wiki-Ersteller diesen Satz etwas verständlicher ausdrücken könnte.

MfG

Amenophis86

Alten Satz hier benennen, besseren Satz vorschlagen und jemanden mit Wiki Zugriff kann es ändern, oder selbst Wiki Zugang beantragen :)
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Shadow3561

Nun gut,
Es handelt sich um folgen Satz im Abschnitt 5.6 des Wiki

ZitatAuf der Code-Seite wird bzw. im großen Textfeld ist dann der Code aus der Datei lambda.js im Paket Alexa-Fhem vollständig einzufügen.

Folgender Vorschlag:
ZitatDen kompletten Text im Codefeld löschen und den der lambda.js eintragen.

Alternative:
Den Text des Codefeldes durch den der lambda.js ersetzen. 

Das Wiki ist eh sehr schwer zu lesen, dass ist aber wohl der Einrichtung von Alexa ansich geschuldet.
Das Hin und Her mit den ganzen Browserfenstern ist nicht immer einfach zu verstehen.
Es hätte bei mir wohl gleich beim ersten Anlauf funktioniert wenn der o.A. Satz verständlicher ausgedrückt worden wäre.

MfG

Amenophis86

Habe es in folgendes geändert:
ZitatAuf der Code-Seite wird bzw. im großen Textfeld ist dann der Code aus der Datei lambda.js im Paket  Alexa-Fhem vollständig einzufügen. Dabei muss der vorhandene Code im Texteil komplett gelöscht, der Teil aus der lamda.js eingefügt und noch der Hostname im Quellcode an den eigenen Hostnamen angepasst werden.
Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Shadow3561

Ändere bitte noch folgendes

ZitatAuf der Code-Seite wird bzw. im großen Textfeld ist dann der Code aus der Datei lambda.js im Paket

In

ZitatAuf der Code-Seite wird,  bzw.ist,  im großen Textfeld dann der Code aus der Datei lambda.js im Paket....

Dann sollte es jeder verstehen.

MfG
Und danke

amenomade

Oder einfach...
ZitatAuf der Code-Seite ist  im großen Textfeld dann der Code aus der Datei lambda.js im Paket Alexa-Fhem vollständig einzufügen

Was bedeutet sonst "es wird einzufügen"?
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Amenophis86

Aktuell dabei unser neues Haus mit KNX am einrichten. Im nächsten Schritt dann KNX mit FHEM verbinden. Allein zwei Dinge sind dabei selten: Zeit und Geld...

Shadow3561

Zitat von: amenomade am 25 September 2017, 13:36:37
Oder einfach...
Was bedeutet sonst "es wird einzufügen"?

Klugscheissmodus an:
Die Interpunktion ist wichtig! Satzbildung sollte man in der Schule doch noch lernen oder?
Klugscheissmodus aus.

Bitte nicht falsch verstehen, aber ohne richtige Kommasetzung lassen sich manche Sätze nicht gleich beim ersten mal verstehen. Und je einfacher ein Satz, desto besser zu verstehen.

Meine Rechtschreibung und Grammatik ist übrigens auch nicht die beste.

Also wenn, 
Dann eher so

ZitatAuf der Code-Seite ist  im großen Textfeld dann der Code aus der Datei lambda.js,  im Paket Alexa-Fhem,  vollständig einzufügen

8)
MfG

amenomade

ZitatKlugscheissmodus an:
Die Interpunktion ist wichtig! Satzbildung sollte man in der Schule doch noch lernen oder?
Klugscheissmodus aus.

Die Interpunktion, die in der Tat wichtig ist, erlaubt aber nicht die Kombination von unterschiedlichen Verbformen und die Ellipse vom Infinitiv oder vom Partizip wie in:
ZitatEs wird,  bzw.ist,  einzufügen.
Umgekehrt würdest Du wahrscheinlich nicht sagen: "Es ist, bzw. wird, einzufügen".
Es wird eingegt.
Es ist einzufügen.

Dann eventuell:
ZitatEs wird eingefügt bzw. ist einzufügen

So habe ich es zumindest in der Schule gelernt ;)

Ausserdem laut Duden:
ZitatDie Konjunktion "beziehungsweise" verbindet beigeordnete Hauptsätze. Vor "beziehungsweise" kann zur bessere Gliederung ein Komma gesetzt werden.

Die Konjunktion "beziehungsweise" verbindet ohne Komma Satzteile.

Hier verbindest Du Statzteile, oder? Ansonsten:
ZitatEs wird eingefügt, bzw. es ist einzufügen
mit zwei schönen vollständigen Sätze.

Grüße vom Chef Klugscheißer ;)
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus