Krikroff Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 Notification Center Le centre de notifications à pour objectif de centraliser au mieux les besoins en communication en mettant à disposition une interface (lua) permettant d’accéder à divers services (HC2 Push & Mail, Pushover, passerelle personnalisée etc.) afin de pousser des messages dynamiques et informations diverses vers l’ extérieur. Version: 1.0.1Phase du projet : Bêta Actuellement « Notification Center » est capable de gérer de manière automatique des demandes de notifications (concurrentes ou non) en utilisant les services suivants : HC2 Push (Mobile ID) HC2 Email (User ID) Pushover: Simple Notifications for Android, iOS, and Desktop (https://pushover.net/) Pushingbox (http://www.pushingbox.com) Prowl (http://www.prowlapp.com/) En cours d' intégration: Passerelle personnalisée (Ex : script php free sms, etc.) LiveNotifier (http://www.livenotifier.net) Roadmap: SMS Gateway & PAW Notification XBMC (Popup) TTS (support tiers) Messages prédéfinis (avec "template" ou non) Périphérique virtuel avec retour visuel : Nombre d’envois (Jours/mois), état du moteur de notification etc. Table de correspondance Mobile ID / User ID <-> Périphérique / Utilisateur par réflexion de l’API Panic Mode: routage automatique de tous les messages (prioritaires) vers une passerelle GSM (PAW, SMS Gateway) en cas de défaillance de fourniture Internet (ADSL/Fibre/Etc) En cours d'enrichissement... 8
Krikroff Posté(e) le 9 septembre 2014 Auteur Signaler Posté(e) le 9 septembre 2014 Installation et exemples d'utilisation A. Installation: Prérequis: HC2 version 3.590 ou 3.591bêtaCréer une variable globale x_nc_object (valeur 0 par défaut) Importer le périphérique virtuel "Notification Center" (.vfib) et noter l' ID du vd fraichement installé.Notification_Center_1.0.1beta.vfib Créer une nouvelle scène nommée x_nc_trigger (scène active + Do not allow alarm...) puis copier/coller le code du fichier en prenant soin de renseigner l' ID de votre vd dans la variable adéquate.Scene-x_nc_trigger.txtAttention: Il faut créer la variable avant la scène, de même si la variable doit être recréé la scène doit être de nouveau sauvegardée afin que le trigger soit pris en compte. Parametrage du vd: dans le code du bouton "Notify"Mettre à jour les valeurs par défaut pour le service "HC2" settings.services.hc2 = { -- User ID userId = 2, -- Smartphone type device ID smartphoneId = 385, -- Title (optional) title = nil, -- Notification type [push|email] type = "push" } Mettre à jour la valeurs par défaut pour le service "PUSHOVER" settings.services.pushover = { -- Application's API token token = "xxxxxxxxxxxxxxxx", -- User key user = "xxxxxxxxxxxxxxx", -- Device (optional) device = nil, -- Title (optional) title = nil, -- Priority priority = "0", -- Pushover sound (default) sound = "pushover" } B. Exemples d'utilisation: La fonction suivante est utile au bon fonctionnement et doit être présente dans la page de code a l'origine de la demande --- Notify function -- @ param params The object with parameters -- @ rev 1.0.1 local notify = function(params) if (params and type(params)=="table") then local data, object = fibaro:getGlobalValue("x_nc_object"), {}; if (not params.time) then params.time = os.time() end if (not params.order) then params.order = 1 end if (not params.status) then params.status = 0 end if (string.len(data) > 0) then local data = json.decode(data); if (data and type(object)=="table") then object = data; params.order = #object + 1; fibaro:debug("Object found, new notification added"); end else fibaro:debug("Object not found, create new object and add notification"); end table.insert(object, params); fibaro:setGlobal("x_nc_object", json.encode(object)); fibaro:debug(string.format("Notification #%s sent on %s", params.time, os.date('%Y-%m-%d %H:%M:%S', params.time))); end end Exemples Pushover: Les valeurs passées dans l'objet settings sont prioritaires sur les valeurs par défaut (ici token, user etc.) notify({ message = "The door is open for a long time", service = "pushover", settings = { token = "arFcVXmeNytdfvZHDxJi5rydfZrN29", -- Application's API token (override default settings) user = "uPy54LkKMpfA8xah4PyDsiljjrZHobo", -- User key (override default settings) priority = "0", -- Message Priority: Normal (option) title = "Warning", -- Add a title (override default settings) timestamp = os.time() -- Specifying a Message Time (option) } }); Exemples Push par HC2: notify({ message = "The door is open for a long time", service = "hc2", settings = { title = "Warning",-- Add a title (override default settings) type = "push" -- Set to push notification } }); Exemples Mail par HC2: notify({ message = "1 - The door is open for a long time", service = "hc2", settings = { title = "Warning",-- Add a title (override default settings) type = "email", -- Set to email notification userId = 2 -- Override the default user ID } }); Exemples Prowl: notify({ message = "The door is open for a long time", -- The name of the event or subject of the notification. service = "prowl", settings = { apikey = "xxxxxxxxx", -- API keys (40-byte hexadecimal string) priority = 0, -- Message Priority: Normal application = "HC2", -- The name of your application or the application generating the event. description = "Warning" -- A description of the event, generally terse. } }); Exemples PushingBox: notify({ message = "The door is open for a long time", -- The name of the event or subject of the notification. service = "pushingBox", settings = { devid = "xxxxxxxxx", -- The DeviceID variables = { ['temperature'] = "10.5", ['action'] = "push", } } }); En cours d'enrichissement... 1
Moicphil Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 Mais c'est top ça Jc ! hâte de voir ceci finalisé... // et cerise sur le gâteau, toi tu mets ta Roadmap ! //
Krikroff Posté(e) le 9 septembre 2014 Auteur Signaler Posté(e) le 9 septembre 2014 Ça marche pas trop mal chez moi après des tests sur des environnements différents me diront si le projet est viable ou pas... Logiquement le code sera en ligne ce soir, il attend sagement sur ma box depuis un petit moment Envoyé de mon iPhone àl'aide de Tapatalk
Nico Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 Cool ? Question, une idée pour utiliser par exemple SMS Gateway comme passerelle SMS de sortie ? Prêt àtester en tout cas.
Moicphil Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 Je suis prêt... Envoyé de mon C6603 en utilisant Tapatalk
Krikroff Posté(e) le 9 septembre 2014 Auteur Signaler Posté(e) le 9 septembre 2014 Ah mais ne vous attendez pas àun truc de dingue non plus . Je n'utilise pas SMS gateway j'ai ma propre passerelle SMS mais si il y a une API c'est dans la roadmap ! Envoyé de mon iPhone àl'aide de Tapatalk
Moicphil Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 Tu as quoi comme passerelle sms? Paw ? Ça serait bien de pouvoir ajouter ceci non? Je m'en sers bien aussi comme notif... Envoyé de mon C6603 en utilisant Tapatalk
Nico Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 Bah si tu intègres ta propre passerelle cela me va ? Elle fonctionne aussi avec un smartphone android directement et simplement ?
Krikroff Posté(e) le 9 septembre 2014 Auteur Signaler Posté(e) le 9 septembre 2014 @Nico, non àbase d'un vieux module gsm siemens en rs232 @moicphil, hop PAW dans les tuyaux J'espère pas rentrer trop tard pour vous poster quelque chose ce soir Envoyé de mon iPhone àl'aide de Tapatalk
JM13 Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 Super !! mais pour toi Krikroff tu peux faire ça de la main gauche pendant que la droite termine le débugage de la V4 Passer par une passerelle SMS (SMS Gateway) ou par LiveNotifier ...c'est bof bof La fonction qui manque en fait à ta roadmap, c'est l'identification d'une coupure ADSL et basculer automatiquement d'un PUSH/SMS par le HC2(ADSL), à un message par la passerelle (3G) C'est prévu ?
Moicphil Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 Au contraire une passerelle SMS c'est top quand tu n'es pas chez toi et que t'as pas Internet, tu reçois quand même ta notif ! Pour la coupure adsl, tu peux être notifié en faisant un Ping sur une adresse web, si ping KO >> sms via la passerelle en LAN
JM13 Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 Je me suis mal exprimé... En fait, l'idée est : Si je perds l'ADSL ...alors je passe par la passerelle Si quelqu'un fait un brouillage chez moi alors je passe par l'ADSL Si j'ai les 2 possibilités,j'en prends une que ce soit par la passerelle ou par l'ADSL Il faut les 2 possibilités et la sélection de l'un ou l'autre doit se faire "automatiquement" et comme il existe un plugin FREEBOX (par exemple ) ce ne doit pas être trop difficile !
Moicphil Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 Ok, j'ai mieux compris. Tu souhaites un relais GSM en cas de coupure internet... Je ne pense pas que ça soit le sujet ( ou alors je suis à l'ouest complet ) Le plus simple étant ( je pense ) d'investir dans ce cas dans un routeur 3g // ou attendons que Fibaro nous donne la possibilité d’insérer une clef 3G dans un port usb //
Nico Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 Oui, làon parle de notif, d'où ma question de sms Gateway.
JM13 Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 Plus simple que ça moiCphil et Oui Nico Un téléphone (un peu obsolète d'une de mes filles) avec SMS Gatesway et une carte SIM à 2€ de FREE !!! Ca suffit pour bye-passer l'ADSL qui pourrait être HS ! non ? en plus SMS Gateway (ou autre bien sur) se pilote par commande HTTP donc "simple" (à mon niveau )
Moicphil Posté(e) le 9 septembre 2014 Signaler Posté(e) le 9 septembre 2014 J'ai bien compris, j'utilise moi même Paw en tant que passerelle SMS et ceci avec une SIM 2€ . Mais tu es toujours hors-sujet ! car d'aprés le titre du sujet : - notif SMS>> Oui (via Paw ou sms gateway, etc...) - relais GSM >> Non
Krikroff Posté(e) le 9 septembre 2014 Auteur Signaler Posté(e) le 9 septembre 2014 De retour .. @JM13, si j'ai bien tout compris ton souhait serait en gros un routage automatique de toutes les notifications vers une passerelle GSM (ex: SMS Gateway) en cas de défaillance de la ligne ADSL/Fibre ? Une sorte de mode Panic en fait ... 2
JM13 Posté(e) le 10 septembre 2014 Signaler Posté(e) le 10 septembre 2014 Exact ! Krikroff Toutes les solutions de manières indépendantes marchent (SMS par Free ou PUSH/SMS par HC2, ou SMS gateway) mais le judicieux serait de pouvoir basculer en cas d'incident ! non ?
Moicphil Posté(e) le 10 septembre 2014 Signaler Posté(e) le 10 septembre 2014 J'avais donc mal compris ta demande JM13...désolé ;-) C'est vrai que de basculer l'ensemble des notifs en cas de pb Adsl serait un plus... Envoyé de mon C6603 en utilisant Tapatalk
Krikroff Posté(e) le 10 septembre 2014 Auteur Signaler Posté(e) le 10 septembre 2014 C'est ajouté àla roadmap . J'attends vos retours sur le projet et en fonction de ceux ci je prioriserais les tâches. Envoyé de mon iPhone àl'aide de Tapatalk
Nico Posté(e) le 10 septembre 2014 Signaler Posté(e) le 10 septembre 2014 Merci Krikroff, j'essai peut être ce soir, mais ça va être compliqué, je pars en déplacement demain pour 2 jours.
JM13 Posté(e) le 10 septembre 2014 Signaler Posté(e) le 10 septembre 2014 C'est rigolo ... moi aussi et je vais àToulouse !!!
Krikroff Posté(e) le 10 septembre 2014 Auteur Signaler Posté(e) le 10 septembre 2014 Il n'y a pas la feu au lac
Oliroch Posté(e) le 10 septembre 2014 Signaler Posté(e) le 10 septembre 2014 Hello Question à2 balles !! Mon fournisseur d'accès internet fournis une prestation d'envoi de SMS depuis leur console admin, Cela serai aussi utilisable !?
Messages recommandés