<div dir="ltr"><div>Hello,</div><div><br></div><div>I'm  using an Asterisk 17 dialplan that currently includes:</div><div>1. many "DB gets" calls (ie statements like Set(FOO=${DB(Foo/Bar)})</div><div>2. and a couple of "DB puts"  (ie statements like Set(DB(Foo/Bar)=Foo) or DB_DELETE(Foo/bar))</div><div><br></div><div><br></div><div>I would like to add an HTTP Provisionning API that would allow an external program to mostly change or sometimes read some ASTDB values.</div><div><br></div><div>Which architecture would you suggest for this ?</div><div><br></div><div>I can foresee the following options but I would very curious to discover alternatives.<br></div><div><br></div><div>1. Use AMI over HTTP</div><div><br></div><div>2. Use ARI but if I'm not mistaken, AR does not cover ASTDB</div><div><br></div><div>3. Develop a custom Web App that either:<br></div><div><br></div><div>3.1 Directly read or write on /var/lib/asterisk/astdb.sqlite3 but what about concurrency</div><div><br></div><div>3.2 Use shell CLI (asterisk -rx 'database put Foo Bar Baz')</div><div><br></div><div>4. Replace dialplan's ASTDB calls with CURL statements (if positive, how to avoid repeating CURLOPT calls all over my dialplan).<br></div><div><br></div><div>Best regards<br></div></div>