Azure 기능 및 Twilio를 사용하여 DIY ADHD 약물 알림 구축

최근에 나는 줄곧 Azure의 기능을 가지고 나의 생활의 다른 부분을 자동화하고 있다.바로 오늘, 내가 곧 다가올 작업 프로젝트를 위해 함수를 사용하는 시범을 세웠을 때, 나는 고개를 들어 시계를 보았는데, 시간이 오후 4시라는 것을 발견했다.

🙋‍♀️ 좋은 소식은: 당신이 인코딩을 할 때, 시간이 매우 빨리 지나간다는 것이다.


🤦‍♀️ 나쁜 소식은 내 ADHD 약물이 없으면 내 기능이 좋지 않다는 것이다. 그리고... 나는 ADHD 약물을 복용하는 것을 잊어버렸다.



우리 같은 다동증 환자들에 대해 우리 working memory 는 문제가 있다.만약 당신이 업무 기억에 익숙하지 않다면, 그것은 우리의 기억의 일부분이다. 정보는 다음 단계가 무엇인지 기억하고, 임무에 전념하거나, 단기간 내에 정보를 사용할 수 있다.예를 들어 내가 이야기를 할 때 나는 항상 흥분하고 꼬불꼬불한 길을 걷는다. 내 뇌는 쓰레기 수집기를 운행하고 내가 처음에 말한 것이 무엇인지 완전히 잊어버린다.그리고 저는 날씨를 자주 보거나 구글 홈페이지에 2-3번 물어봐야 그날의 온도를 기억할 수 있습니다.해저총동원급 건망증의 다리가 아니라고 했지만... 내가 이 순간에 중요한 일을 완전히 잊어버릴 거라는 걸 다들 알고 있었어. 특히 매일 약을 두 번 복용하는 것과 같은 임무.😣 어쩌면 이것이 바로 내가 오늘 오후부터 나의 뇌 활동이 느려졌다고 느끼는 이유일지도 몰라, 응?

그래서 나는 내가 하고 있는 일을 멈추고 약 반 알을 먹었다. (나는 새벽 1시까지 일어나고 싶지 않다)😳), 그리고 Azure Functions로 자신의 ADHD 약물 구축에 관한 간편한 안내서를 작성했다.

우리가 잊어버리기 전에😅)!


1단계: Azure 함수 만들기


이해하기 쉬운 시각적 효과/화면 캡처를 위해 Azure 포털을 사용하여 만들었습니다.또한 VS Code, Azure CLI 등을 사용할 수 있습니다.​ Azure 기능이 있으면 테스트가 필요할 때마다 클라우드에 배치할 필요가 없이 기계에서 로컬로 작성하고 테스트할 수 있습니다.
Azure 기능을 만들려면 시작 메뉴에서 시작하고 기능 적용을 선택하십시오.

그리고 여기에 당신의 함수에 대한 기본 정보를 기입해야 합니다.응용 프로그램 이름, 사용하고 싶은 Azure 구독, resource group (이 예에서 새로운 것을 만들고 있습니다), 사용하고 싶은 운영체제, hosting plan (소비를 사용하고 있습니다), 사용하고 싶은 위치 (캘리포니아에 있기 때문에 미국 서부 2는 보통 저의 기본값입니다), 사용하고 싶은 실행 시 창고 (이 예에서 저는 자바스크립트를 사용합니다) 를 포함합니다.나는 새 storage 를 만들거나 기존 것을 사용할 수 있다.이런 상황에서 나는 새로운 것을 만들었다.​​

일단 내가 이 모든 것을 기입하면 나는 계속 배치할 수 있다.1, 2분을 기다린 후에 배치 성공 소식을 관찰하세요.​
만약 네가 이 절차를 따른다면, 우리는 우리의 자원을 가지고 있다."자원으로 이동"을 선택하면 새로운 기능 응용 프로그램을 볼 수 있습니다.​ 이제 우리는 새로운 함수를 추가할 것이다.


트리거 타이머를 선택하면 함수 이름과 트리거의 시간표를 묻는 메시지가 나타납니다."0 15 **"를 입력했기 때문에 알림은 오후 3시에 발송됩니다 (* 참고: 로그의 타임 스탬프 보기 - Azure가 조화로운 세계를 사용할 때 - UTC).

그러나 이 알림은 어떻게 발송됩니까?만약 당신에게 개인 조수가 있다면, 그는 매일 문자로 당신에게 등록을 해서 당신이 약물을 복용했는지 확인할 수 있습니다. 이것은 좋지 않습니까?좋아, 우리가 커피를 달릴 로봇 조수를 세울 시간은 없지만, 우리는 Twilio API로 우리에게 문자를 보낼 수 있어!이렇게 하려면 Twilio 계정을 만들고 생성 후 SID 및 인증 토큰(☎️ 트와일리오에 등록해서 내 개인 코드(CHLOE20)로 20달러를 받을 수 있다.프로그램 설정에 즉시 추가하면 안전합니다. (코드에 직접 추가하는 것이 아니라)

2단계: Twilio와 통합



RECIPIENT\u 번호, SENDER\u 번호 (저는 Twilio에서 구입한 전화번호 사용) 와 Twilio\u 영패 및 Twilio\u SID를 구성 아래의 응용 프로그램 설정에 추가해야 합니다.앞서 언급한 바와 같이, 코드에 직접 추가하는 것이 아니라 app settings 에 추가하는 것을 강력히 건의합니다. 따라서 안전합니다.Azure 응용 프로그램 설정이 어떤지/왜 좋은지 비디오 프레젠테이션을 찾고 있다면 Stefan Schackow와 함께 보세요this video.
Twilio가 설치되어 있는지 확인해야 합니다.터미널에 아래를 입력하기만 하면 됩니다.
npm install twilio

3단계: 코드를 쓰세요(빨리, 우리가 마음을 분산시키기 전에!)!😅)


다음은 코드입니다.👉 index.js
보시다시피 타이머가 만료되었는지 확인하는 함수를 만들었습니다. (만료되면 로그에 기록합니다.)그리고 SENDER\u NUMBER에서 메시지 본문을 포함하여 RECIPIENT\u NUMBER로 보낼 메시지 (.create) 를 만들고 있습니다.만약 모든 것이 계획대로 진행된다면,'성공적으로 보낸 텍스트'는 나의 로그에 쓰일 것이다.그렇지 않으면, 나는 오류를 기록할 것이다.
또는 함수 bindings 에서 설정할 수 있습니다.json 파일.너는 내가 이것들로 만든 요점을 좀 볼 수 있다here.Bindings 다음과 같이 Azure 포털의 통합 섹션을 통해 편집하고 업데이트할 수도 있습니다.

그러나 우리가 작성한 코드를 사용하면 귀속을 설정할 필요가 없습니다. 함수를 간단하게 호출하고 프로그램 설정에서 변수(SENDER\u NUMBER, TWILIO\u SID 등)를 인용할 수 있습니다.

보시다시피 이것은 매우 간단합니다.문자를 만들어서 보내세요. — 알림이 전송되었습니다!그런데 문제가 하나 있는데... 때때로 나는 한 가지 임무에 전념해서 텍스트를 볼 수 없다. (그리고 핸드폰에서 많은 통지를 받았다. 만약 내가 눈치채지 못하면 어떡하지?😬). 그래서 백업 계획을 하나 추가하기로 했는데... 전화 하나!
전화를 하는 코드는 문자를 보내는 것과 유사하지만, 약간의 변동이 있을 뿐이다.
다음은 코드입니다.👉 index.js
전화 번호는 "TWIML\u URL"입니다.이것은 내 응용 프로그램 설정의 URL을 가리키며 내가 Twilio에서 설정한 TwiML Bin에 연결된다.ATwiML Bin에서는 정적 TwiML 문서를 작성할 수 있습니다.Twilio 문자나 음성 네트워크 연결을 설정할 수 있는 개인 URL을 제공합니다.이 예에서 나는 호출 기간에 발생해야 할 일의 논리를 저장하기 위해 TwiML Bin]https://www.twilio.com/docs/runtime/tutorials/twiml-bins을 사용한다.

TwiML를 사용하여 대화형 음성 및 메시지 응용 프로그램을 만들 수 있습니다.다음은 내가 통화 중에 사용하는 방법의 예입니다.

TwiML Bin 페이지 상단에 있는 URL은 응용 프로그램 설정에서 TwiML_URL로 보호되는 URL입니다. (index.js에서 전화 알림 기능에 사용됩니다.)내가 사용하는 문법은 TwiML 용기의 마크다운과 유사하다는 것을 알게 될 것이다.피임약 알림이 있는 메시지를 말하고 MP3를 재생합니다.Mp3는 선택할 수 있지만, 나는 메시지를 한두 분 재생해서 내 약통을 찾아서 알약을 복용하고 끊기로 결정했다.MP3가 뭐예요?네, 여기 프레젠테이션이 있습니다.
MP3는 Twilio가 관리합니다Assets.새 자산을 만들려면 + 단추를 누르면 MP3를 업로드합니다(원한다면 Twilio Assets. 알림 텍스트에 이미지를 추가할 수도 있습니다!).이 자산은 하나의 MP3이지만, 당신은 MP3의 노래, 정보를 자신, 또는 그 어떤 다른 소리로부터, 당신이 생각하기를!

4단계: 테스트 (우리가 다른 프로젝트에 신경 쓰이기 전에)!


마지막으로, 우리는 우리의 트리거 타이머를 테스트해야 한다!원하는 경우 휴대폰의 연락처에 Twilio 번호를 추가할 수 있습니다.내가 준 이름"💊👩🏻‍⚕️💊”, 하지만 원한다면 당신의 일을 이산화할 수 있습니다(할머니/아빠/사촌언니/제니퍼도 마찬가지입니다!).이렇게 하면, 전화가 당신이 설정한 시간에 연결될 때, 당신은 그것이 무엇인지 알게 될 것이다.

호출/텍스트를 테스트하려면 모든 기능에서 Azure 포털의 실행 단추 (저장 옆에 있는 index.js 파일 맨 위) 를 누르십시오.그러나 텍스트/호출이 정확한 시간에 트리거될 수 있도록 타이머를 테스트해야 합니다.선택한 통화/문자 발송 시간을 이미 지났거나 아직 발생하지 않은 시간으로 설정할 수 있습니다.함수에서 함수의 타이머를 편집할 수 있습니다.json 파일을 편집하려면 집적을 누르십시오.

혼동을 피하는 중요한 힌트 중 하나는 로그의 시간 스탬프를 검사해서 포함할 정확한 크론 표현식을 확인하는 데 도움을 주는 것입니다. 그렇지 않으면 경보가 잘못된 시간에 발송될 수 있습니다!).Azure가 사용하는 조화로운 세계(UTC)에 대응하는 시간을 확보해야 합니다.

5단계: 설정하고 잊어버려!⏰



만약 함수가 정상적으로 작동하고 정확한 시간에 발송된다면 - 축하합니다. Azure Trigger Timer 구축했습니다!🎉 자동 알림을 도와주고 싶지만 코드를 마음대로 만들 수 있거나, 필요에 따라 바뀌는 것을 더 찾고 있다면, 트와일리오+Azurehere를 이용해 가짜 남자친구의 통화/문자를 만드는 것에 대한 글을 볼 수 있다.즐거운 인코딩!

좋은 웹페이지 즐겨찾기