====== Texting Service ====== Wouldn't it be nice if your Vizy kept you informed throughout your day, such as when your dog jumps on the couch, when a car has pulled into your driveway, or when a unique bird species has visited your birdfeeder? Text messages are a good way to keep you updated regardless of your location -- closeby or another continent. Vizy can send you text messages, images, and/or videos directly to your phone. So, which dog jumped on the couch? Barkley! You're so busted... As of software version 0.2.111, Vizy supports text messaging through [[https://telegram.org/|Telegram]]. * Apps can respond to specific text commands that you send to Vizy (e.g. [[wiki:birdfeeder_app#Text commands|send me pictures of the most recent birdfeeder visitors]]). * Apps can send you updates that you're interested in (e.g. cat is waiting by door to be let outside). * You can subscribe/unsubscribe to these updates and so can your friends. * Vizy can give you system information upon request, such as [[wiki:texting#sysinfo|available RAM, CPU utilization]], [[wiki:texting#webshare|Web Share URL]], etc. * For more advanced users, you can add your own [[wiki:birdfeeder_app#Text handler|text handlers]] written in Python. * No setup fees, no monthly fees, etc. ===== Setting things up ===== Setting up Telegram on your Vizy is straightforward. It shouldn't take more than a few minutes -- just follow the steps below. ==== Sign-up for a Telegram account ==== If you don't have a Telegram account, start by downloading the Telegram App on your phone. {{wiki:image_1223.jpg?20}} Running the app will guide you through the sign-up process. ==== Link your desktop/laptop to your Telegram account ==== There's a copy-and-paste operation that's pretty clumsy from a smartphone, so we recommend linking your Telegram account to your desktop/laptop so you can take advantage of your computer's mouse. If you're deft at copying and pasting on your smartphone, you can skip this step, but this is pretty easy to do and having access from your desktop/laptop is useful in general. Point your browser [[https://web.telegram.org|here]] on your desktop/laptop. It will ask you to input your phone number, and then it will guide you through the linking process. There's some QR code stuff, etc., and voila, you're accessing Telegram from your desktop/laptop. ==== Create a new bot ==== In the Telegram search box, search for ''@botfather'' and click on the **BotFather** in the search results to bring you into a dialog with the BotFather. {{wiki:image_1214.jpg}} Next, type the command ''/newbot'' and BotFather will guide you through creating a new bot. At the end of this process, you will be given a token (outlined in red below). {{wiki:image_1225.jpg?400}} Copy the token into your clipboard. Also, write down the unique name you assigned to your bot. (You can [[wiki:texting#Sharing your Vizy bot with friends|share this name with friends]] so that they can interact with your Vizy.) ==== Copy the token into Vizy ==== Point your browser to your Vizy. (Please refer to the [[wiki:vizy_getting_started|getting started guide]] if you need help with connecting to your Vizy, etc.) Click on the ☰ icon in the upper right corner and select **Texting**. {{wiki:image_1222.jpg?200}} Paste the token that you copied in the previous step into the **Token** box and click on **Submit**. {{wiki:image_1230.jpg?400}} If you're successful, you'll get a **Connected!** message. {{wiki:image_1217.jpg?400}} Congrats! (If you're unsuccessful, go back to the BotFather and make sure that you copied the token string in its entirety, but paying close attention not to copy extra spaces or other characters.) ===== Testing and subscribing ===== Go back to the Telegram browser tab and type **help**. You should get a message similar to the one below. {{wiki:image_1226.jpg?500}} Type in **subscribe** and you will be subscribed to Vizy updates. You can go back to the Vizy tab and bring up the **Texting** dialog and click on **Send test text**. {{wiki:image_1220.jpg?400}} And you should receive a test message similar to below. {{wiki:image_1221.jpg?350}} Congrats (again)! You're now subscribed to Vizy text updates. ===== Sharing your Vizy bot with friends ===== You just need to give them your bot's unique name. If you forgot it, go back to the BotFather conversation and it will be there in the exchange. Tell them to bring up Telegram and search for ''@'', connect, and then type in ''subscribe''. Telegram also has a cool abbreviated domain, that allows you to use ''https://t.me/'' to contact your Vizy. ===== Commands ===== If you type **help** into your Vizy bot dialog, you'll get a list of commands that are currently available. This changes depending on which program Vizy is running (more on that later), but there are several system-level commands that are always available. ==== webshare ==== The **webshare** command returns a public [[wiki:remote|Web Share]] URL and link. You can click on the link and it will take you to your Vizy whether your Vizy is local or remote. {{wiki:image_1227.jpg?400}} (Note, this is beta functionality. There are no known issues when used via desktop/laptop, but there are some issues with mobile. (1) Video streaming has connection issues in iOS. (2) If you click on the link within the Telegram mobile app, it won't display the entire page. You can copy the URL to a browser (on your phone) and it will render without issues, however.) ==== sysinfo ==== The **sysinfo** command provides information on Vizy's CPU, Memory, and Power {{:sysinfo_return.png?nolink&400|}} ==== subscribe, unsubscribe === Anyone with your bot's unique name can **subscribe** from within Telegram, and **unsubscribe** once they're subscribed. Subscribed users will receive text updates from your Vizy. See [[wiki:texting#Sharing your Vizy bot with friends|Sharing your Vizy bot with friends]] ===== Program-specific commands ===== ==== Birdfeeder ==== {{page>wiki:birdfeeder_app#Texting&noheader&noindent}} ==== Object Detector ==== {{page>wiki:object_detector_app#Texting&noheader&noindent}} ==== Video example ==== The Video example has a **grab** command that grabs the current live frame and sends it.