जैसा कि @ टॉम ने बताया है, अब आपके कस्टम कौशल में डिवाइस पता प्राप्त करना संभव है। यदि आप अपने कौशल को बनाने के लिए पाइथन का उपयोग कर रहे हैं, तो नई एपीआई को लागू करना बहुत आसान है। मैंने here के बारे में एक विस्तृत ब्लॉग पोस्ट लिखा है। यह भी पता चलता है कि पुनर्प्राप्त पते के लिए संबंधित निर्देशांक कैसे प्राप्त करें, इसलिए यह आपके लिए उपयोगी हो सकता है। संक्षेप में, शुरू करने के लिए यहां एक पायथन फ़ंक्शन है। मैं अपने कौशल के लिए बहुत आसान फ्लास्क-Ask लाइब्रेरी का उपयोग करता हूं। इस प्रकार, डिवाइस आईडी और सहमति टोकन ऑब्जेक्ट्स का मान प्राप्त करना आसान है। ये आपके कौशल में भेजे गए JSON अनुरोध में एलेक्सा द्वारा शामिल किए गए हैं। वे अमेज़न पता एपीआई समाप्ति बिंदु को अनुरोध के निर्माण के लिए आवश्यक हैं:
import requests
from flask_ask import Ask, context
def get_alexa_location():
URL = "https://api.amazonalexa.com/v1/devices/{}/settings" \
"/address".format(context.System.device.deviceId)
TOKEN = context.System.user.permissions.consentToken
HEADER = {'Accept': 'application/json',
'Authorization': 'Bearer {}'.format(TOKEN)}
r = requests.get(URL, headers=HEADER)
if r.status_code == 200:
return(r.json())
समारोह एक सफल फोन पर कुछ इस तरह वापस आ जाएगी:
{u'city': u'Berlin', u'countryCode': u'DE',
u'addressLine1': u'42 Unter den Linden',
u'addressLine2': None, u'stateOrRegion': u'Berlin',
u'districtOrCounty': u'Berlin', u'postalCode': u'10117',
u'addressLine3': None}
आप geopy उपयोग कर सकते हैं निर्देशांक को यह पता कन्वर्ट करने के लिए ।
हालांकि आप flask_ask लाइब्रेरी को कैसे जोड़ते हैं? मैंने उपर्युक्त कोड की कोशिश की है, लेकिन अब यह मेरा लैम्ब्डा फ़ंक्शन विफल करता है जब यह – thefragileomen
'पाइप इंस्टॉल फ्लास्क-पूछ' में फ्लास्क_स्क मॉड्यूल आयात करने का प्रयास करता है, तो पर्याप्त होना चाहिए। आपको दस्तावेज़ीकरण की जांच करनी चाहिए: https://flask-ask.readthedocs.io – mc51