| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,143 @@ |
| 1 |
+<?php |
|
| 2 |
+/** |
|
| 3 |
+ * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
+ * |
|
| 5 |
+ * @author Double Bastion LLC |
|
| 6 |
+ * |
|
| 7 |
+ * @license GNU AGPL version 3 or any later version |
|
| 8 |
+ * |
|
| 9 |
+ * This program is free software; you can redistribute it and/or |
|
| 10 |
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
+ * License as published by the Free Software Foundation; either |
|
| 12 |
+ * version 3 of the License, or any later version. |
|
| 13 |
+ * |
|
| 14 |
+ * This program is distributed in the hope that it will be useful, |
|
| 15 |
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
+ * |
|
| 19 |
+ * You should have received a copy of the GNU Affero General Public |
|
| 20 |
+ * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
+ * |
|
| 22 |
+ */ |
|
| 23 |
+ |
|
| 24 |
+declare(strict_types=1); |
|
| 25 |
+ |
|
| 26 |
+script('pax_fax', 'settings');
|
|
| 27 |
+style('pax_fax', 'style');
|
|
| 28 |
+ |
|
| 29 |
+?> |
|
| 30 |
+ |
|
| 31 |
+<div id="pax_fax_adm"> |
|
| 32 |
+ <div class="section"> |
|
| 33 |
+ <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
+ <p id="settings-dscr"><?php p($l->t('Enter either your Phaxio credentials or your Sinch credentials in the fields from below:')); ?></p><br>
|
|
| 35 |
+ |
|
| 36 |
+ <div class="stp_followupsection"> |
|
| 37 |
+ |
|
| 38 |
+ <form id="phaxio_credentials" action="#" > |
|
| 39 |
+ |
|
| 40 |
+ <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
+ panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below.):</label></p> |
|
| 42 |
+ <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
+ placeholder="E.g.: d6f172ce92e4f2 ..." /><br> |
|
| 44 |
+ |
|
| 45 |
+ <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
+ panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below.):</label></p> |
|
| 47 |
+ <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
+ placeholder="E.g.: 8af589b8ad9579 ..." /><br> |
|
| 49 |
+ |
|
| 50 |
+ <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
+ left panel, then copy the token found under 'Webhook Token' and enter it in the field from below.):</label></p> |
|
| 52 |
+ <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
+ placeholder="E.g.: b6d90b72ab6cce450025abd46f4d697" /><br> |
|
| 54 |
+ |
|
| 55 |
+ <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
+ <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
+ Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
+ if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
+ in his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
+ contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
+ <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
+ <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
+ picture in the upper right corner, then click 'Personal settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
+ in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
+ click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
+ location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
+ log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
+ URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
+ choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
+ the database.):</label></p> |
|
| 73 |
+ <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
+ placeholder="E.g.: https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio" /><br><br><br> |
|
| 75 |
+ |
|
| 76 |
+ <p><label for="sinch_project_id" class="setlabeltext"><b><?php p($l->t('Sinch Project ID'));?></b> (While logged in to your Sinch account, click the 'Project'
|
|
| 77 |
+ drop-down menu located at the left end of the upper bar, then click 'View all projects'. On the 'Projects' page you will see a list with all the available |
|
| 78 |
+ projects and their respective Project IDs. Copy the ID of the project that you use for faxing (usually this is the default 'First project') and paste it in |
|
| 79 |
+ the field from below.):</label></p> |
|
| 80 |
+ <input type="password" class="pax_fax_box" id="sinch_project_id" name="sinch_project_id" autocomplete="false" |
|
| 81 |
+ placeholder="E.g.: d5d91b72ab6cce450024abd46f4d6d9" /><br> |
|
| 82 |
+ |
|
| 83 |
+ <p><label for="sinch_key_id" class="setlabeltext"><b><?php p($l->t('Sinch Key ID'));?></b> (While logged in to your Sinch account, select the name of the project
|
|
| 84 |
+ you use for faxing from the 'Project' drop-down menu on the upper bar (usually this is the default 'First project'), then click 'Settings' on the left panel, |
|
| 85 |
+ then click 'Access Keys'. On the 'Access Keys' page you will see a list with all the access keys for the selected project. If you haven't created any access |
|
| 86 |
+ keys for the project, create a key by clicking the 'Create access key' button. On the 'Create Access Key' popup window, in the 'Name' field enter a display |
|
| 87 |
+ name for your key and click 'Create'. The access key will be created and the Key ID and Key Secret window will be displayed. Copy the Key ID and Key Secret |
|
| 88 |
+ to a safe location, then enter the Key ID in the field from below. The Key Secret can be viewed only when the key is created. If you lose it, simply |
|
| 89 |
+ generate a new key. Each project has its own set of access keys.):</label></p> |
|
| 90 |
+ <input type="password" class="pax_fax_box" id="sinch_key_id" name="sinch_key_id" autocomplete="false" |
|
| 91 |
+ placeholder="E.g.: c0d50b72ab6ced450025abd46f6d5c4" /><br> |
|
| 92 |
+ |
|
| 93 |
+ <p><label for="sinch_key_secret" class="setlabeltext"><b><?php p($l->t('Sinch Key Secret'));?></b> (Copy the Key Secret created as described above, in the field from
|
|
| 94 |
+ below.):</label></p> |
|
| 95 |
+ <input type="password" class="pax_fax_box" id="sinch_key_secret" name="sinch_key_secret" autocomplete="false" |
|
| 96 |
+ placeholder="E.g.: e4d50b72ab6cdf450025abd46f4d6c2" /><br> |
|
| 97 |
+ |
|
| 98 |
+ <p><label for="sinch_service_id" class="setlabeltext"><b><?php p($l->t('Sinch service ID'));?></b> (While logged in to your Sinch account click 'Fax' on the left
|
|
| 99 |
+ panel, then click 'Services'. On the 'Services' page you will see a list with your fax services. If you haven't created any service manually, you will see |
|
| 100 |
+ only the 'Default Service' created automatically. If you want to associate different callback URLs (for incoming faxes) with different numbers, you will |
|
| 101 |
+ want to create multiple services and assign a different callback URL and a different set of numbers to each service. You can create a new service by clicking |
|
| 102 |
+ 'Add New Service' on the 'Services' page. If you don't need multiple services, just use the 'Default Service'. On the 'Services' page, below the name of each |
|
| 103 |
+ fax service you will see its ID. Copy the ID of the service you want to use, in the field from below.):</label></p> |
|
| 104 |
+ <input type="password" class="pax_fax_box" id="sinch_service_id" name="sinch_service_id" autocomplete="false" |
|
| 105 |
+ placeholder="E.g.: e6d50b72ab6cbe450025abd46f4d74d" /><br> |
|
| 106 |
+ |
|
| 107 |
+ <p><label for="sinch_callback_url" class="setlabeltext"><b><?php p($l->t('Sinch callback URL for incoming faxes'));?></b> (The callback URL for incoming faxes must
|
|
| 108 |
+ have the form: <b>https://<font style="color:#a11a1a;">username</font>:<font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxsinch</b> if Nextcloud is served on a subdomain, or <b>https://<font |
|
| 109 |
+ style="color:#a11a1a;">username</font>:<font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxsinch</b> if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font> |
|
| 110 |
+ </b> is the Nextcloud user who has a Sinch phone number in his Sinch account (If <b><font style="color:#a11a1a;">username</font></b> contains an <b>@</b> , |
|
| 111 |
+ replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the |
|
| 112 |
+ 'application password' created for this purpose as explained below, and <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. |
|
| 113 |
+ To create the Nextcloud 'application password' click on the user picture in the upper right corner, then click 'Personal settings', then, on the left panel, |
|
| 114 |
+ under 'Personal' click 'Security', then under 'Devices & sessions', in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. |
|
| 115 |
+ The password will be displayed only when created. Copy the password, click the 'Done' button, enter the password in the constructed callback URL between ':' |
|
| 116 |
+ and '@' as shown above, copy the entire callback URL to a safe location, then enter the callback URL in the field from below. Next, while logged in to your |
|
| 117 |
+ Sinch account click 'Fax' on the left panel, then click 'Services'. On the 'Services' page click the name of the service you want to use, then, on the |
|
| 118 |
+ 'Incoming' tab, in the 'Incoming webhook url' field enter the callback URL for incoming faxes that you have just created, under 'Webhook content type' select |
|
| 119 |
+ 'multipart/form-data' and click 'Save'.):</label></p> |
|
| 120 |
+ <input type="password" class="pax_fax_box" id="sinch_callback_url" name="sinch_callback_url" autocomplete="false" |
|
| 121 |
+ placeholder="E.g.: https://username:5CHGv-c36j9-kV2wm-RgJcl-7pjVE@cloud.example.com/apps/pax_fax/api/recfaxsinch" /><br><br> |
|
| 122 |
+ |
|
| 123 |
+ <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 124 |
+ <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 125 |
+ |
|
| 126 |
+ <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received'));?></b>
|
|
| 127 |
+ (To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux), has to be present on the server. "sendmail"
|
|
| 128 |
+ is a binary that gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to send emails from command line (by |
|
| 129 |
+ specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution).): |
|
| 130 |
+ </label></p> |
|
| 131 |
+ <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 132 |
+ placeholder="E.g.: john.doe@example.com" /><br> |
|
| 133 |
+ |
|
| 134 |
+ <input type="hidden" id="user_id" name="user_id" /> |
|
| 135 |
+ |
|
| 136 |
+ <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 137 |
+ |
|
| 138 |
+ <span id="paxfax_save_msg"></span> |
|
| 139 |
+ |
|
| 140 |
+ </form> |
|
| 141 |
+ </div> |
|
| 142 |
+ </div> |
|
| 143 |
+</div> |
| 1 | 1 |
deleted file mode 100644 |
| ... | ... |
@@ -1,96 +0,0 @@ |
| 1 |
-<?php |
|
| 2 |
-/** |
|
| 3 |
- * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
- * |
|
| 5 |
- * @author Double Bastion LLC |
|
| 6 |
- * |
|
| 7 |
- * @license GNU AGPL version 3 or any later version |
|
| 8 |
- * |
|
| 9 |
- * This program is free software; you can redistribute it and/or |
|
| 10 |
- * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
- * License as published by the Free Software Foundation; either |
|
| 12 |
- * version 3 of the License, or any later version. |
|
| 13 |
- * |
|
| 14 |
- * This program is distributed in the hope that it will be useful, |
|
| 15 |
- * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
- * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
- * |
|
| 19 |
- * You should have received a copy of the GNU Affero General Public |
|
| 20 |
- * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
- * |
|
| 22 |
- */ |
|
| 23 |
- |
|
| 24 |
-declare(strict_types=1); |
|
| 25 |
- |
|
| 26 |
-script('pax_fax', 'settings');
|
|
| 27 |
-style('pax_fax', 'style');
|
|
| 28 |
- |
|
| 29 |
-?> |
|
| 30 |
- |
|
| 31 |
-<div id="pax_fax_adm"> |
|
| 32 |
- <div class="section"> |
|
| 33 |
- <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
- <p id="settings-dscr"><?php p($l->t('Enter your credentials and options in the fields from below:')); ?></p><br>
|
|
| 35 |
- |
|
| 36 |
- <div class="stp_followupsection"> |
|
| 37 |
- |
|
| 38 |
- <form id="phaxio_credentials" action="#" > |
|
| 39 |
- |
|
| 40 |
- <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
- panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
- <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
- placeholder="<?php p($l->t('E.g.: d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
- |
|
| 45 |
- <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
- panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
- <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
- placeholder="<?php p($l->t('E.g.: 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
- |
|
| 50 |
- <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
- left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
- <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
- placeholder="<?php p($l->t('E.g.: b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
- |
|
| 55 |
- <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
- <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
- Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
- if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
- in her/his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
- contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
- <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
- <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
- picture in the upper right corner, then click 'Personal settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
- in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
- click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
- location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
- log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
- URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
- choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
- the database.)</label></p> |
|
| 73 |
- <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
- placeholder="<?php p($l->t('E.g.: https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 75 |
- |
|
| 76 |
- <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 77 |
- <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 78 |
- |
|
| 79 |
- <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received'));?></b>
|
|
| 80 |
- (To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux), has to be present on the server. "sendmail"
|
|
| 81 |
- is a binary that gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to send emails from command line (by |
|
| 82 |
- specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution)): |
|
| 83 |
- </label></p> |
|
| 84 |
- <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 85 |
- placeholder="<?php p($l->t('E.g.: john.doe@example.com')); ?>" /><br>
|
|
| 86 |
- |
|
| 87 |
- <input type="hidden" id="user_id" name="user_id" /> |
|
| 88 |
- |
|
| 89 |
- <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 90 |
- |
|
| 91 |
- <span id="paxfax_save_msg"></span> |
|
| 92 |
- |
|
| 93 |
- </form> |
|
| 94 |
- </div> |
|
| 95 |
- </div> |
|
| 96 |
-</div> |
| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,96 @@ |
| 1 |
+<?php |
|
| 2 |
+/** |
|
| 3 |
+ * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
+ * |
|
| 5 |
+ * @author Double Bastion LLC |
|
| 6 |
+ * |
|
| 7 |
+ * @license GNU AGPL version 3 or any later version |
|
| 8 |
+ * |
|
| 9 |
+ * This program is free software; you can redistribute it and/or |
|
| 10 |
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
+ * License as published by the Free Software Foundation; either |
|
| 12 |
+ * version 3 of the License, or any later version. |
|
| 13 |
+ * |
|
| 14 |
+ * This program is distributed in the hope that it will be useful, |
|
| 15 |
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
+ * |
|
| 19 |
+ * You should have received a copy of the GNU Affero General Public |
|
| 20 |
+ * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
+ * |
|
| 22 |
+ */ |
|
| 23 |
+ |
|
| 24 |
+declare(strict_types=1); |
|
| 25 |
+ |
|
| 26 |
+script('pax_fax', 'settings');
|
|
| 27 |
+style('pax_fax', 'style');
|
|
| 28 |
+ |
|
| 29 |
+?> |
|
| 30 |
+ |
|
| 31 |
+<div id="pax_fax_adm"> |
|
| 32 |
+ <div class="section"> |
|
| 33 |
+ <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
+ <p id="settings-dscr"><?php p($l->t('Enter your credentials and options in the fields from below:')); ?></p><br>
|
|
| 35 |
+ |
|
| 36 |
+ <div class="stp_followupsection"> |
|
| 37 |
+ |
|
| 38 |
+ <form id="phaxio_credentials" action="#" > |
|
| 39 |
+ |
|
| 40 |
+ <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
+ panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
+ <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
+ placeholder="<?php p($l->t('E.g.: d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
+ |
|
| 45 |
+ <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
+ panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
+ <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
+ placeholder="<?php p($l->t('E.g.: 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
+ |
|
| 50 |
+ <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
+ left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
+ <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
+ placeholder="<?php p($l->t('E.g.: b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
+ |
|
| 55 |
+ <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
+ <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
+ Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
+ if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
+ in her/his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
+ contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
+ <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
+ <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
+ picture in the upper right corner, then click 'Personal settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
+ in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
+ click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
+ location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
+ log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
+ URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
+ choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
+ the database.)</label></p> |
|
| 73 |
+ <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
+ placeholder="<?php p($l->t('E.g.: https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 75 |
+ |
|
| 76 |
+ <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 77 |
+ <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 78 |
+ |
|
| 79 |
+ <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received'));?></b>
|
|
| 80 |
+ (To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux), has to be present on the server. "sendmail"
|
|
| 81 |
+ is a binary that gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to send emails from command line (by |
|
| 82 |
+ specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution)): |
|
| 83 |
+ </label></p> |
|
| 84 |
+ <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 85 |
+ placeholder="<?php p($l->t('E.g.: john.doe@example.com')); ?>" /><br>
|
|
| 86 |
+ |
|
| 87 |
+ <input type="hidden" id="user_id" name="user_id" /> |
|
| 88 |
+ |
|
| 89 |
+ <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 90 |
+ |
|
| 91 |
+ <span id="paxfax_save_msg"></span> |
|
| 92 |
+ |
|
| 93 |
+ </form> |
|
| 94 |
+ </div> |
|
| 95 |
+ </div> |
|
| 96 |
+</div> |
| 1 | 1 |
deleted file mode 100644 |
| ... | ... |
@@ -1,96 +0,0 @@ |
| 1 |
-<?php |
|
| 2 |
-/** |
|
| 3 |
- * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
- * |
|
| 5 |
- * @author Double Bastion LLC |
|
| 6 |
- * |
|
| 7 |
- * @license GNU AGPL version 3 or any later version |
|
| 8 |
- * |
|
| 9 |
- * This program is free software; you can redistribute it and/or |
|
| 10 |
- * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
- * License as published by the Free Software Foundation; either |
|
| 12 |
- * version 3 of the License, or any later version. |
|
| 13 |
- * |
|
| 14 |
- * This program is distributed in the hope that it will be useful, |
|
| 15 |
- * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
- * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
- * |
|
| 19 |
- * You should have received a copy of the GNU Affero General Public |
|
| 20 |
- * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
- * |
|
| 22 |
- */ |
|
| 23 |
- |
|
| 24 |
-declare(strict_types=1); |
|
| 25 |
- |
|
| 26 |
-script('pax_fax', 'settings');
|
|
| 27 |
-style('pax_fax', 'style');
|
|
| 28 |
- |
|
| 29 |
-?> |
|
| 30 |
- |
|
| 31 |
-<div id="pax_fax_adm"> |
|
| 32 |
- <div class="section"> |
|
| 33 |
- <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
- <p id="settings-dscr"><?php p($l->t('Enter your credentials and options in the fields from below:')); ?></p><br>
|
|
| 35 |
- |
|
| 36 |
- <div class="stp_followupsection"> |
|
| 37 |
- |
|
| 38 |
- <form id="phaxio_credentials" action="#" > |
|
| 39 |
- |
|
| 40 |
- <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
- panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
- <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
- placeholder="<?php p($l->t('E.g.: d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
- |
|
| 45 |
- <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
- panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
- <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
- placeholder="<?php p($l->t('E.g.: 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
- |
|
| 50 |
- <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
- left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
- <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
- placeholder="<?php p($l->t('E.g.: b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
- |
|
| 55 |
- <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
- <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
- Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
- if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
- in her/his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
- contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
- <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
- <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
- picture in the upper right corner, then click 'Personal settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
- in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
- click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
- location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
- log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
- URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
- choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
- the database.)</label></p> |
|
| 73 |
- <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
- placeholder="<?php p($l->t('E.g.: https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 75 |
- |
|
| 76 |
- <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 77 |
- <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 78 |
- |
|
| 79 |
- <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received'));?></b>
|
|
| 80 |
- (To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux), has to be present on the server. "sendmail"
|
|
| 81 |
- is a binary that gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to send emails from command line (by |
|
| 82 |
- specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution)): |
|
| 83 |
- </label></p> |
|
| 84 |
- <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 85 |
- placeholder="<?php p($l->t('E.g.: john.doe@example.com')); ?>" /><br>
|
|
| 86 |
- |
|
| 87 |
- <input type="hidden" id="user_id" name="user_id" /> |
|
| 88 |
- |
|
| 89 |
- <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 90 |
- |
|
| 91 |
- <span id="paxfax_save_msg"></span> |
|
| 92 |
- |
|
| 93 |
- </form> |
|
| 94 |
- </div> |
|
| 95 |
- </div> |
|
| 96 |
-</div> |
| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,96 @@ |
| 1 |
+<?php |
|
| 2 |
+/** |
|
| 3 |
+ * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
+ * |
|
| 5 |
+ * @author Double Bastion LLC |
|
| 6 |
+ * |
|
| 7 |
+ * @license GNU AGPL version 3 or any later version |
|
| 8 |
+ * |
|
| 9 |
+ * This program is free software; you can redistribute it and/or |
|
| 10 |
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
+ * License as published by the Free Software Foundation; either |
|
| 12 |
+ * version 3 of the License, or any later version. |
|
| 13 |
+ * |
|
| 14 |
+ * This program is distributed in the hope that it will be useful, |
|
| 15 |
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
+ * |
|
| 19 |
+ * You should have received a copy of the GNU Affero General Public |
|
| 20 |
+ * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
+ * |
|
| 22 |
+ */ |
|
| 23 |
+ |
|
| 24 |
+declare(strict_types=1); |
|
| 25 |
+ |
|
| 26 |
+script('pax_fax', 'settings');
|
|
| 27 |
+style('pax_fax', 'style');
|
|
| 28 |
+ |
|
| 29 |
+?> |
|
| 30 |
+ |
|
| 31 |
+<div id="pax_fax_adm"> |
|
| 32 |
+ <div class="section"> |
|
| 33 |
+ <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
+ <p id="settings-dscr"><?php p($l->t('Enter your credentials and options in the fields from below:')); ?></p><br>
|
|
| 35 |
+ |
|
| 36 |
+ <div class="stp_followupsection"> |
|
| 37 |
+ |
|
| 38 |
+ <form id="phaxio_credentials" action="#" > |
|
| 39 |
+ |
|
| 40 |
+ <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
+ panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
+ <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
+ placeholder="<?php p($l->t('E.g.: d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
+ |
|
| 45 |
+ <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
+ panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
+ <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
+ placeholder="<?php p($l->t('E.g.: 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
+ |
|
| 50 |
+ <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
+ left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
+ <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
+ placeholder="<?php p($l->t('E.g.: b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
+ |
|
| 55 |
+ <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
+ <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
+ Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
+ if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
+ in her/his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
+ contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
+ <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
+ <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
+ picture in the upper right corner, then click 'Personal settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
+ in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
+ click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
+ location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
+ log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
+ URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
+ choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
+ the database.)</label></p> |
|
| 73 |
+ <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
+ placeholder="<?php p($l->t('E.g.: https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 75 |
+ |
|
| 76 |
+ <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 77 |
+ <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 78 |
+ |
|
| 79 |
+ <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received'));?></b>
|
|
| 80 |
+ (To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux), has to be present on the server. "sendmail"
|
|
| 81 |
+ is a binary that gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to send emails from command line (by |
|
| 82 |
+ specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution)): |
|
| 83 |
+ </label></p> |
|
| 84 |
+ <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 85 |
+ placeholder="<?php p($l->t('E.g.: john.doe@example.com')); ?>" /><br>
|
|
| 86 |
+ |
|
| 87 |
+ <input type="hidden" id="user_id" name="user_id" /> |
|
| 88 |
+ |
|
| 89 |
+ <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 90 |
+ |
|
| 91 |
+ <span id="paxfax_save_msg"></span> |
|
| 92 |
+ |
|
| 93 |
+ </form> |
|
| 94 |
+ </div> |
|
| 95 |
+ </div> |
|
| 96 |
+</div> |
| 1 | 1 |
deleted file mode 100644 |
| ... | ... |
@@ -1,98 +0,0 @@ |
| 1 |
-<?php |
|
| 2 |
-/** |
|
| 3 |
- * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
- * |
|
| 5 |
- * @author Double Bastion LLC |
|
| 6 |
- * |
|
| 7 |
- * @license GNU AGPL version 3 or any later version |
|
| 8 |
- * |
|
| 9 |
- * This program is free software; you can redistribute it and/or |
|
| 10 |
- * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
- * License as published by the Free Software Foundation; either |
|
| 12 |
- * version 3 of the License, or any later version. |
|
| 13 |
- * |
|
| 14 |
- * This program is distributed in the hope that it will be useful, |
|
| 15 |
- * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
- * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
- * |
|
| 19 |
- * You should have received a copy of the GNU Affero General Public |
|
| 20 |
- * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
- * |
|
| 22 |
- */ |
|
| 23 |
- |
|
| 24 |
-declare(strict_types=1); |
|
| 25 |
- |
|
| 26 |
-script('pax_fax', 'settings');
|
|
| 27 |
-style('pax_fax', 'style');
|
|
| 28 |
- |
|
| 29 |
-?> |
|
| 30 |
- |
|
| 31 |
-<div id="pax_fax_adm"> |
|
| 32 |
- <div class="section"> |
|
| 33 |
- <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
- <p id="settings-dscr"><?php p($l->t('Enter your credentials and options in the fields from below:')); ?></p><br>
|
|
| 35 |
- |
|
| 36 |
- <div class="stp_followupsection"> |
|
| 37 |
- |
|
| 38 |
- <form id="phaxio_credentials" action="#" > |
|
| 39 |
- |
|
| 40 |
- <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
- panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
- <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
- placeholder="<?php p($l->t('E.g.: d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
- |
|
| 45 |
- <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
- panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
- <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
- placeholder="<?php p($l->t('E.g.: 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
- |
|
| 50 |
- <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
- left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
- <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
- placeholder="<?php p($l->t('E.g.: b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
- |
|
| 55 |
- <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
- <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
- Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
- if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
- in her/his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
- contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
- <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
- <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
- picture in the upper right corner, then click 'Personal settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
- in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
- click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
- location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
- log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
- URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
- choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
- the database.)</label></p> |
|
| 73 |
- <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
- placeholder="<?php p($l->t('E.g.: https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 75 |
- |
|
| 76 |
- <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 77 |
- <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 78 |
- |
|
| 79 |
- <p>To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux),
|
|
| 80 |
- has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to |
|
| 81 |
- send emails from command line (by specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution). |
|
| 82 |
- </p><br> |
|
| 83 |
- |
|
| 84 |
- <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received:'));?>
|
|
| 85 |
- </b></label></p> |
|
| 86 |
- <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 87 |
- placeholder="<?php p($l->t('E.g.: john.doe@example.com')); ?>" /><br>
|
|
| 88 |
- |
|
| 89 |
- <input type="hidden" id="user_id" name="user_id" /> |
|
| 90 |
- |
|
| 91 |
- <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 92 |
- |
|
| 93 |
- <span id="paxfax_save_msg"></span> |
|
| 94 |
- |
|
| 95 |
- </form> |
|
| 96 |
- </div> |
|
| 97 |
- </div> |
|
| 98 |
-</div> |
| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,98 @@ |
| 1 |
+<?php |
|
| 2 |
+/** |
|
| 3 |
+ * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
+ * |
|
| 5 |
+ * @author Double Bastion LLC |
|
| 6 |
+ * |
|
| 7 |
+ * @license GNU AGPL version 3 or any later version |
|
| 8 |
+ * |
|
| 9 |
+ * This program is free software; you can redistribute it and/or |
|
| 10 |
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
+ * License as published by the Free Software Foundation; either |
|
| 12 |
+ * version 3 of the License, or any later version. |
|
| 13 |
+ * |
|
| 14 |
+ * This program is distributed in the hope that it will be useful, |
|
| 15 |
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
+ * |
|
| 19 |
+ * You should have received a copy of the GNU Affero General Public |
|
| 20 |
+ * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
+ * |
|
| 22 |
+ */ |
|
| 23 |
+ |
|
| 24 |
+declare(strict_types=1); |
|
| 25 |
+ |
|
| 26 |
+script('pax_fax', 'settings');
|
|
| 27 |
+style('pax_fax', 'style');
|
|
| 28 |
+ |
|
| 29 |
+?> |
|
| 30 |
+ |
|
| 31 |
+<div id="pax_fax_adm"> |
|
| 32 |
+ <div class="section"> |
|
| 33 |
+ <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
+ <p id="settings-dscr"><?php p($l->t('Enter your credentials and options in the fields from below:')); ?></p><br>
|
|
| 35 |
+ |
|
| 36 |
+ <div class="stp_followupsection"> |
|
| 37 |
+ |
|
| 38 |
+ <form id="phaxio_credentials" action="#" > |
|
| 39 |
+ |
|
| 40 |
+ <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
+ panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
+ <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
+ placeholder="<?php p($l->t('E.g.: d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
+ |
|
| 45 |
+ <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
+ panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
+ <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
+ placeholder="<?php p($l->t('E.g.: 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
+ |
|
| 50 |
+ <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
+ left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
+ <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
+ placeholder="<?php p($l->t('E.g.: b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
+ |
|
| 55 |
+ <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
+ <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
+ Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
+ if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
+ in her/his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
+ contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
+ <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
+ <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
+ picture in the upper right corner, then click 'Personal settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
+ in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
+ click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
+ location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
+ log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
+ URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
+ choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
+ the database.)</label></p> |
|
| 73 |
+ <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
+ placeholder="<?php p($l->t('E.g.: https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 75 |
+ |
|
| 76 |
+ <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 77 |
+ <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 78 |
+ |
|
| 79 |
+ <p>To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux),
|
|
| 80 |
+ has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to |
|
| 81 |
+ send emails from command line (by specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution). |
|
| 82 |
+ </p><br> |
|
| 83 |
+ |
|
| 84 |
+ <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received:'));?>
|
|
| 85 |
+ </b></label></p> |
|
| 86 |
+ <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 87 |
+ placeholder="<?php p($l->t('E.g.: john.doe@example.com')); ?>" /><br>
|
|
| 88 |
+ |
|
| 89 |
+ <input type="hidden" id="user_id" name="user_id" /> |
|
| 90 |
+ |
|
| 91 |
+ <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 92 |
+ |
|
| 93 |
+ <span id="paxfax_save_msg"></span> |
|
| 94 |
+ |
|
| 95 |
+ </form> |
|
| 96 |
+ </div> |
|
| 97 |
+ </div> |
|
| 98 |
+</div> |
| 1 | 1 |
deleted file mode 100644 |
| ... | ... |
@@ -1,98 +0,0 @@ |
| 1 |
-<?php |
|
| 2 |
-/** |
|
| 3 |
- * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
- * |
|
| 5 |
- * @author Double Bastion LLC |
|
| 6 |
- * |
|
| 7 |
- * @license GNU AGPL version 3 or any later version |
|
| 8 |
- * |
|
| 9 |
- * This program is free software; you can redistribute it and/or |
|
| 10 |
- * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
- * License as published by the Free Software Foundation; either |
|
| 12 |
- * version 3 of the License, or any later version. |
|
| 13 |
- * |
|
| 14 |
- * This program is distributed in the hope that it will be useful, |
|
| 15 |
- * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
- * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
- * |
|
| 19 |
- * You should have received a copy of the GNU Affero General Public |
|
| 20 |
- * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
- * |
|
| 22 |
- */ |
|
| 23 |
- |
|
| 24 |
-declare(strict_types=1); |
|
| 25 |
- |
|
| 26 |
-script('pax_fax', 'settings');
|
|
| 27 |
-style('pax_fax', 'style');
|
|
| 28 |
- |
|
| 29 |
-?> |
|
| 30 |
- |
|
| 31 |
-<div id="pax_fax_adm"> |
|
| 32 |
- <div class="section"> |
|
| 33 |
- <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
- <p id="settings-dscr"><h3><?php p($l->t('Enter your credentials and options in the fields from below:')); ?></h3></p><br>
|
|
| 35 |
- |
|
| 36 |
- <div class="stp_followupsection"> |
|
| 37 |
- |
|
| 38 |
- <form id="phaxio_credentials" action="#" > |
|
| 39 |
- |
|
| 40 |
- <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
- panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
- <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
- placeholder="<?php p($l->t('E.g.: d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
- |
|
| 45 |
- <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
- panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
- <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
- placeholder="<?php p($l->t('E.g.: 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
- |
|
| 50 |
- <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
- left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
- <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
- placeholder="<?php p($l->t('E.g.: b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
- |
|
| 55 |
- <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
- <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
- Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
- if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
- in her/his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
- contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
- <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
- <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
- picture in the upper right corner, then click 'Personal settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
- in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
- click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
- location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
- log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
- URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
- choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
- the database.)</label></p> |
|
| 73 |
- <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
- placeholder="<?php p($l->t('E.g.: https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 75 |
- |
|
| 76 |
- <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 77 |
- <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 78 |
- |
|
| 79 |
- <p>To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux),
|
|
| 80 |
- has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to |
|
| 81 |
- send emails from command line (by specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution). |
|
| 82 |
- </p><br> |
|
| 83 |
- |
|
| 84 |
- <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received:'));?>
|
|
| 85 |
- </b></label></p> |
|
| 86 |
- <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 87 |
- placeholder="<?php p($l->t('E.g.: john.doe@example.com')); ?>" /><br>
|
|
| 88 |
- |
|
| 89 |
- <input type="hidden" id="user_id" name="user_id" /> |
|
| 90 |
- |
|
| 91 |
- <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 92 |
- |
|
| 93 |
- <span id="paxfax_save_msg"></span> |
|
| 94 |
- |
|
| 95 |
- </form> |
|
| 96 |
- </div> |
|
| 97 |
- </div> |
|
| 98 |
-</div> |
| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,98 @@ |
| 1 |
+<?php |
|
| 2 |
+/** |
|
| 3 |
+ * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
+ * |
|
| 5 |
+ * @author Double Bastion LLC |
|
| 6 |
+ * |
|
| 7 |
+ * @license GNU AGPL version 3 or any later version |
|
| 8 |
+ * |
|
| 9 |
+ * This program is free software; you can redistribute it and/or |
|
| 10 |
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
+ * License as published by the Free Software Foundation; either |
|
| 12 |
+ * version 3 of the License, or any later version. |
|
| 13 |
+ * |
|
| 14 |
+ * This program is distributed in the hope that it will be useful, |
|
| 15 |
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
+ * |
|
| 19 |
+ * You should have received a copy of the GNU Affero General Public |
|
| 20 |
+ * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
+ * |
|
| 22 |
+ */ |
|
| 23 |
+ |
|
| 24 |
+declare(strict_types=1); |
|
| 25 |
+ |
|
| 26 |
+script('pax_fax', 'settings');
|
|
| 27 |
+style('pax_fax', 'style');
|
|
| 28 |
+ |
|
| 29 |
+?> |
|
| 30 |
+ |
|
| 31 |
+<div id="pax_fax_adm"> |
|
| 32 |
+ <div class="section"> |
|
| 33 |
+ <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
+ <p id="settings-dscr"><h3><?php p($l->t('Enter your credentials and options in the fields from below:')); ?></h3></p><br>
|
|
| 35 |
+ |
|
| 36 |
+ <div class="stp_followupsection"> |
|
| 37 |
+ |
|
| 38 |
+ <form id="phaxio_credentials" action="#" > |
|
| 39 |
+ |
|
| 40 |
+ <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
+ panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
+ <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
+ placeholder="<?php p($l->t('E.g.: d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
+ |
|
| 45 |
+ <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
+ panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
+ <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
+ placeholder="<?php p($l->t('E.g.: 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
+ |
|
| 50 |
+ <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
+ left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
+ <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
+ placeholder="<?php p($l->t('E.g.: b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
+ |
|
| 55 |
+ <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
+ <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
+ Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
+ if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
+ in her/his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
+ contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
+ <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
+ <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
+ picture in the upper right corner, then click 'Personal settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
+ in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
+ click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
+ location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
+ log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
+ URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
+ choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
+ the database.)</label></p> |
|
| 73 |
+ <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
+ placeholder="<?php p($l->t('E.g.: https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 75 |
+ |
|
| 76 |
+ <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 77 |
+ <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 78 |
+ |
|
| 79 |
+ <p>To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux),
|
|
| 80 |
+ has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to |
|
| 81 |
+ send emails from command line (by specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution). |
|
| 82 |
+ </p><br> |
|
| 83 |
+ |
|
| 84 |
+ <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received:'));?>
|
|
| 85 |
+ </b></label></p> |
|
| 86 |
+ <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 87 |
+ placeholder="<?php p($l->t('E.g.: john.doe@example.com')); ?>" /><br>
|
|
| 88 |
+ |
|
| 89 |
+ <input type="hidden" id="user_id" name="user_id" /> |
|
| 90 |
+ |
|
| 91 |
+ <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 92 |
+ |
|
| 93 |
+ <span id="paxfax_save_msg"></span> |
|
| 94 |
+ |
|
| 95 |
+ </form> |
|
| 96 |
+ </div> |
|
| 97 |
+ </div> |
|
| 98 |
+</div> |
| 1 | 1 |
deleted file mode 100644 |
| ... | ... |
@@ -1,98 +0,0 @@ |
| 1 |
-<?php |
|
| 2 |
-/** |
|
| 3 |
- * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
- * |
|
| 5 |
- * @author Double Bastion LLC |
|
| 6 |
- * |
|
| 7 |
- * @license GNU AGPL version 3 or any later version |
|
| 8 |
- * |
|
| 9 |
- * This program is free software; you can redistribute it and/or |
|
| 10 |
- * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
- * License as published by the Free Software Foundation; either |
|
| 12 |
- * version 3 of the License, or any later version. |
|
| 13 |
- * |
|
| 14 |
- * This program is distributed in the hope that it will be useful, |
|
| 15 |
- * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
- * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
- * |
|
| 19 |
- * You should have received a copy of the GNU Affero General Public |
|
| 20 |
- * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
- * |
|
| 22 |
- */ |
|
| 23 |
- |
|
| 24 |
-declare(strict_types=1); |
|
| 25 |
- |
|
| 26 |
-script('pax_fax', 'settings');
|
|
| 27 |
-style('pax_fax', 'style');
|
|
| 28 |
- |
|
| 29 |
-?> |
|
| 30 |
- |
|
| 31 |
-<div id="pax_fax_adm"> |
|
| 32 |
- <div class="section"> |
|
| 33 |
- <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
- <p id="settings-dscr"><h3><?php p($l->t('Enter your credentials and options in the fields from below:')); ?></h3></p><br>
|
|
| 35 |
- |
|
| 36 |
- <div class="stp_followupsection"> |
|
| 37 |
- |
|
| 38 |
- <form id="phaxio_credentials" action="#" > |
|
| 39 |
- |
|
| 40 |
- <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
- panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
- <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
- placeholder="<?php p($l->t('E.g.: d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
- |
|
| 45 |
- <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
- panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
- <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
- placeholder="<?php p($l->t('E.g.: 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
- |
|
| 50 |
- <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
- left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
- <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
- placeholder="<?php p($l->t('E.g.: b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
- |
|
| 55 |
- <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
- <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
- Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
- if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
- in her/his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
- contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
- <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
- <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
- picture in the upper right corner, then click 'Settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
- in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
- click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
- location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
- log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
- URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
- choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
- the database.)</label></p> |
|
| 73 |
- <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
- placeholder="<?php p($l->t('E.g.: https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 75 |
- |
|
| 76 |
- <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 77 |
- <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 78 |
- |
|
| 79 |
- <p>To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux),
|
|
| 80 |
- has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to |
|
| 81 |
- send emails from command line (by specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution). |
|
| 82 |
- </p><br> |
|
| 83 |
- |
|
| 84 |
- <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received:'));?>
|
|
| 85 |
- </b></label></p> |
|
| 86 |
- <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 87 |
- placeholder="<?php p($l->t('E.g.: john.doe@example.com')); ?>" /><br>
|
|
| 88 |
- |
|
| 89 |
- <input type="hidden" id="user_id" name="user_id" /> |
|
| 90 |
- |
|
| 91 |
- <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 92 |
- |
|
| 93 |
- <span id="paxfax_save_msg"></span> |
|
| 94 |
- |
|
| 95 |
- </form> |
|
| 96 |
- </div> |
|
| 97 |
- </div> |
|
| 98 |
-</div> |
| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,98 @@ |
| 1 |
+<?php |
|
| 2 |
+/** |
|
| 3 |
+ * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
+ * |
|
| 5 |
+ * @author Double Bastion LLC |
|
| 6 |
+ * |
|
| 7 |
+ * @license GNU AGPL version 3 or any later version |
|
| 8 |
+ * |
|
| 9 |
+ * This program is free software; you can redistribute it and/or |
|
| 10 |
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
+ * License as published by the Free Software Foundation; either |
|
| 12 |
+ * version 3 of the License, or any later version. |
|
| 13 |
+ * |
|
| 14 |
+ * This program is distributed in the hope that it will be useful, |
|
| 15 |
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
+ * |
|
| 19 |
+ * You should have received a copy of the GNU Affero General Public |
|
| 20 |
+ * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
+ * |
|
| 22 |
+ */ |
|
| 23 |
+ |
|
| 24 |
+declare(strict_types=1); |
|
| 25 |
+ |
|
| 26 |
+script('pax_fax', 'settings');
|
|
| 27 |
+style('pax_fax', 'style');
|
|
| 28 |
+ |
|
| 29 |
+?> |
|
| 30 |
+ |
|
| 31 |
+<div id="pax_fax_adm"> |
|
| 32 |
+ <div class="section"> |
|
| 33 |
+ <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
+ <p id="settings-dscr"><h3><?php p($l->t('Enter your credentials and options in the fields from below:')); ?></h3></p><br>
|
|
| 35 |
+ |
|
| 36 |
+ <div class="stp_followupsection"> |
|
| 37 |
+ |
|
| 38 |
+ <form id="phaxio_credentials" action="#" > |
|
| 39 |
+ |
|
| 40 |
+ <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
+ panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
+ <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
+ placeholder="<?php p($l->t('E.g.: d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
+ |
|
| 45 |
+ <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
+ panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
+ <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
+ placeholder="<?php p($l->t('E.g.: 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
+ |
|
| 50 |
+ <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
+ left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
+ <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
+ placeholder="<?php p($l->t('E.g.: b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
+ |
|
| 55 |
+ <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
+ <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
+ Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
+ if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
+ in her/his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
+ contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
+ <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
+ <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
+ picture in the upper right corner, then click 'Settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
+ in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
+ click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
+ location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
+ log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
+ URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
+ choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
+ the database.)</label></p> |
|
| 73 |
+ <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
+ placeholder="<?php p($l->t('E.g.: https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 75 |
+ |
|
| 76 |
+ <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 77 |
+ <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 78 |
+ |
|
| 79 |
+ <p>To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux),
|
|
| 80 |
+ has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to |
|
| 81 |
+ send emails from command line (by specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution). |
|
| 82 |
+ </p><br> |
|
| 83 |
+ |
|
| 84 |
+ <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received:'));?>
|
|
| 85 |
+ </b></label></p> |
|
| 86 |
+ <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 87 |
+ placeholder="<?php p($l->t('E.g.: john.doe@example.com')); ?>" /><br>
|
|
| 88 |
+ |
|
| 89 |
+ <input type="hidden" id="user_id" name="user_id" /> |
|
| 90 |
+ |
|
| 91 |
+ <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 92 |
+ |
|
| 93 |
+ <span id="paxfax_save_msg"></span> |
|
| 94 |
+ |
|
| 95 |
+ </form> |
|
| 96 |
+ </div> |
|
| 97 |
+ </div> |
|
| 98 |
+</div> |
| 1 | 1 |
deleted file mode 100644 |
| ... | ... |
@@ -1,98 +0,0 @@ |
| 1 |
-<?php |
|
| 2 |
-/** |
|
| 3 |
- * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
- * |
|
| 5 |
- * @author Double Bastion LLC |
|
| 6 |
- * |
|
| 7 |
- * @license GNU AGPL version 3 or any later version |
|
| 8 |
- * |
|
| 9 |
- * This program is free software; you can redistribute it and/or |
|
| 10 |
- * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
- * License as published by the Free Software Foundation; either |
|
| 12 |
- * version 3 of the License, or any later version. |
|
| 13 |
- * |
|
| 14 |
- * This program is distributed in the hope that it will be useful, |
|
| 15 |
- * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
- * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
- * |
|
| 19 |
- * You should have received a copy of the GNU Affero General Public |
|
| 20 |
- * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
- * |
|
| 22 |
- */ |
|
| 23 |
- |
|
| 24 |
-declare(strict_types=1); |
|
| 25 |
- |
|
| 26 |
-script('pax_fax', 'settings');
|
|
| 27 |
-style('pax_fax', 'style');
|
|
| 28 |
- |
|
| 29 |
-?> |
|
| 30 |
- |
|
| 31 |
-<div id="pax_fax_adm"> |
|
| 32 |
- <div class="section"> |
|
| 33 |
- <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
- <p id="settings-dscr"><h3><?php p($l->t('Please enter your credentials and options in the fields from below:')); ?></h3></p><br>
|
|
| 35 |
- |
|
| 36 |
- <div class="stp_followupsection"> |
|
| 37 |
- |
|
| 38 |
- <form id="phaxio_credentials" action="#" > |
|
| 39 |
- |
|
| 40 |
- <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
- panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
- <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
- placeholder="<?php p($l->t('e.g. d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
- |
|
| 45 |
- <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
- panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
- <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
- placeholder="<?php p($l->t('e.g. 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
- |
|
| 50 |
- <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
- left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
- <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
- placeholder="<?php p($l->t('e.g. b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
- |
|
| 55 |
- <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
- <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
- Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
- if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
- in her/his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
- contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
- <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
- <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
- picture in the upper right corner, then click 'Settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
- in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
- click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
- location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
- log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
- URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
- choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
- the database.)</label></p> |
|
| 73 |
- <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
- placeholder="<?php p($l->t('e.g. https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 75 |
- |
|
| 76 |
- <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 77 |
- <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 78 |
- |
|
| 79 |
- <p>To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux),
|
|
| 80 |
- has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to |
|
| 81 |
- send emails from command line (by specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution). |
|
| 82 |
- </p><br> |
|
| 83 |
- |
|
| 84 |
- <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received:'));?>
|
|
| 85 |
- </b></label></p> |
|
| 86 |
- <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 87 |
- placeholder="<?php p($l->t('e.g. john.doe@example.com')); ?>" /><br>
|
|
| 88 |
- |
|
| 89 |
- <input type="hidden" id="user_id" name="user_id" /> |
|
| 90 |
- |
|
| 91 |
- <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 92 |
- |
|
| 93 |
- <span id="paxfax_save_msg"></span> |
|
| 94 |
- |
|
| 95 |
- </form> |
|
| 96 |
- </div> |
|
| 97 |
- </div> |
|
| 98 |
-</div> |
| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,98 @@ |
| 1 |
+<?php |
|
| 2 |
+/** |
|
| 3 |
+ * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
+ * |
|
| 5 |
+ * @author Double Bastion LLC |
|
| 6 |
+ * |
|
| 7 |
+ * @license GNU AGPL version 3 or any later version |
|
| 8 |
+ * |
|
| 9 |
+ * This program is free software; you can redistribute it and/or |
|
| 10 |
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
+ * License as published by the Free Software Foundation; either |
|
| 12 |
+ * version 3 of the License, or any later version. |
|
| 13 |
+ * |
|
| 14 |
+ * This program is distributed in the hope that it will be useful, |
|
| 15 |
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
+ * |
|
| 19 |
+ * You should have received a copy of the GNU Affero General Public |
|
| 20 |
+ * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
+ * |
|
| 22 |
+ */ |
|
| 23 |
+ |
|
| 24 |
+declare(strict_types=1); |
|
| 25 |
+ |
|
| 26 |
+script('pax_fax', 'settings');
|
|
| 27 |
+style('pax_fax', 'style');
|
|
| 28 |
+ |
|
| 29 |
+?> |
|
| 30 |
+ |
|
| 31 |
+<div id="pax_fax_adm"> |
|
| 32 |
+ <div class="section"> |
|
| 33 |
+ <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
+ <p id="settings-dscr"><h3><?php p($l->t('Please enter your credentials and options in the fields from below:')); ?></h3></p><br>
|
|
| 35 |
+ |
|
| 36 |
+ <div class="stp_followupsection"> |
|
| 37 |
+ |
|
| 38 |
+ <form id="phaxio_credentials" action="#" > |
|
| 39 |
+ |
|
| 40 |
+ <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
+ panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
+ <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
+ placeholder="<?php p($l->t('e.g. d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
+ |
|
| 45 |
+ <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
+ panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
+ <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
+ placeholder="<?php p($l->t('e.g. 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
+ |
|
| 50 |
+ <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
+ left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
+ <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
+ placeholder="<?php p($l->t('e.g. b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
+ |
|
| 55 |
+ <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
+ <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> if |
|
| 58 |
+ Nextcloud is served on a subdomain, or <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 59 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">example.com/nextcloud</font>/apps/pax_fax/api/recfaxphaxio</b> |
|
| 60 |
+ if Nextcloud is served on a subdirectory, where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number |
|
| 61 |
+ in her/his Phaxio account (Callback URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> |
|
| 62 |
+ contains an <b>@</b> , replace <b>@</b> with <b>&commat;</b> otherwise the URL won't function), |
|
| 63 |
+ <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application password' created for this purpose as explained below, and |
|
| 64 |
+ <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To create the Nextcloud 'application password' click on the user |
|
| 65 |
+ picture in the upper right corner, then click 'Settings', then, on the left panel, under 'Personal' click 'Security', then under 'Devices & sessions', |
|
| 66 |
+ in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. The password will be displayed only when created. Copy the password, |
|
| 67 |
+ click the 'Done' button, enter the password in the constructed callback URL between ':' and '@' as shown above, copy the entire callback URL to a safe |
|
| 68 |
+ location, then enter the callback URL in the field from below. The next step is to enter the callback URL that you have just created in your Phaxio account: |
|
| 69 |
+ log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the row of the phone number for which you want to set up the callback |
|
| 70 |
+ URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' on the left panel, then scroll down to 'Webhook Version' and |
|
| 71 |
+ choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' button at the bottom of this page to save all the settings to |
|
| 72 |
+ the database.)</label></p> |
|
| 73 |
+ <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 74 |
+ placeholder="<?php p($l->t('e.g. https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 75 |
+ |
|
| 76 |
+ <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 77 |
+ <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 78 |
+ |
|
| 79 |
+ <p>To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux),
|
|
| 80 |
+ has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to |
|
| 81 |
+ send emails from command line (by specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution). |
|
| 82 |
+ </p><br> |
|
| 83 |
+ |
|
| 84 |
+ <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received:'));?>
|
|
| 85 |
+ </b></label></p> |
|
| 86 |
+ <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 87 |
+ placeholder="<?php p($l->t('e.g. john.doe@example.com')); ?>" /><br>
|
|
| 88 |
+ |
|
| 89 |
+ <input type="hidden" id="user_id" name="user_id" /> |
|
| 90 |
+ |
|
| 91 |
+ <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 92 |
+ |
|
| 93 |
+ <span id="paxfax_save_msg"></span> |
|
| 94 |
+ |
|
| 95 |
+ </form> |
|
| 96 |
+ </div> |
|
| 97 |
+ </div> |
|
| 98 |
+</div> |
| 1 | 1 |
deleted file mode 100644 |
| ... | ... |
@@ -1,95 +0,0 @@ |
| 1 |
-<?php |
|
| 2 |
-/** |
|
| 3 |
- * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
- * |
|
| 5 |
- * @author Double Bastion LLC |
|
| 6 |
- * |
|
| 7 |
- * @license GNU AGPL version 3 or any later version |
|
| 8 |
- * |
|
| 9 |
- * This program is free software; you can redistribute it and/or |
|
| 10 |
- * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
- * License as published by the Free Software Foundation; either |
|
| 12 |
- * version 3 of the License, or any later version. |
|
| 13 |
- * |
|
| 14 |
- * This program is distributed in the hope that it will be useful, |
|
| 15 |
- * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
- * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
- * |
|
| 19 |
- * You should have received a copy of the GNU Affero General Public |
|
| 20 |
- * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
- * |
|
| 22 |
- */ |
|
| 23 |
- |
|
| 24 |
-declare(strict_types=1); |
|
| 25 |
- |
|
| 26 |
-script('pax_fax', 'settings');
|
|
| 27 |
-style('pax_fax', 'style');
|
|
| 28 |
- |
|
| 29 |
-?> |
|
| 30 |
- |
|
| 31 |
-<div id="pax_fax_adm"> |
|
| 32 |
- <div class="section"> |
|
| 33 |
- <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
- <p id="settings-dscr"><h3><?php p($l->t('Please enter your credentials and options in the fields from below:')); ?></h3></p><br>
|
|
| 35 |
- |
|
| 36 |
- <div class="stp_followupsection"> |
|
| 37 |
- |
|
| 38 |
- <form id="phaxio_credentials" action="#" > |
|
| 39 |
- |
|
| 40 |
- <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
- panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
- <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
- placeholder="<?php p($l->t('e.g. d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
- |
|
| 45 |
- <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
- panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
- <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
- placeholder="<?php p($l->t('e.g. 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
- |
|
| 50 |
- <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
- left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
- <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
- placeholder="<?php p($l->t('e.g. b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
- |
|
| 55 |
- <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
- <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> , |
|
| 58 |
- where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number in her/his Phaxio account (Callback |
|
| 59 |
- URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> contains an <b>@</b> , replace <b>@</b> |
|
| 60 |
- with <b>&commat;</b> otherwise the URL won't function), <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application |
|
| 61 |
- password' created for this purpose as explained below, and <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To |
|
| 62 |
- create the Nextcloud 'application password' click on the user picture in the upper right corner, then click 'Settings', then, on the left panel, under |
|
| 63 |
- 'Personal' click 'Security', then under 'Devices & sessions', in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. |
|
| 64 |
- The password will be displayed only when created. Copy the password, click the 'Done' button, enter the password in the constructed callback URL between ':' |
|
| 65 |
- and '@' as shown above, copy the entire callback URL to a safe location, then enter the callback URL in the field from below. The next step is to enter the |
|
| 66 |
- callback URL that you have just created in your Phaxio account: log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the |
|
| 67 |
- row of the phone number for which you want to set up the callback URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' |
|
| 68 |
- on the left panel, then scroll down to 'Webhook Version' and choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' |
|
| 69 |
- button at the bottom of this page to save all the settings to the database.)</label></p> |
|
| 70 |
- <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 71 |
- placeholder="<?php p($l->t('e.g. https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 72 |
- |
|
| 73 |
- <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 74 |
- <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 75 |
- |
|
| 76 |
- <p>To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux),
|
|
| 77 |
- has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to |
|
| 78 |
- send emails from command line (by specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution). |
|
| 79 |
- </p><br> |
|
| 80 |
- |
|
| 81 |
- <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received:'));?>
|
|
| 82 |
- </b></label></p> |
|
| 83 |
- <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 84 |
- placeholder="<?php p($l->t('e.g. john.doe@example.com')); ?>" /><br>
|
|
| 85 |
- |
|
| 86 |
- <input type="hidden" id="user_id" name="user_id" /> |
|
| 87 |
- |
|
| 88 |
- <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 89 |
- |
|
| 90 |
- <span id="paxfax_save_msg"></span> |
|
| 91 |
- |
|
| 92 |
- </form> |
|
| 93 |
- </div> |
|
| 94 |
- </div> |
|
| 95 |
-</div> |
| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,95 @@ |
| 1 |
+<?php |
|
| 2 |
+/** |
|
| 3 |
+ * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
+ * |
|
| 5 |
+ * @author Double Bastion LLC |
|
| 6 |
+ * |
|
| 7 |
+ * @license GNU AGPL version 3 or any later version |
|
| 8 |
+ * |
|
| 9 |
+ * This program is free software; you can redistribute it and/or |
|
| 10 |
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
+ * License as published by the Free Software Foundation; either |
|
| 12 |
+ * version 3 of the License, or any later version. |
|
| 13 |
+ * |
|
| 14 |
+ * This program is distributed in the hope that it will be useful, |
|
| 15 |
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
+ * |
|
| 19 |
+ * You should have received a copy of the GNU Affero General Public |
|
| 20 |
+ * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
+ * |
|
| 22 |
+ */ |
|
| 23 |
+ |
|
| 24 |
+declare(strict_types=1); |
|
| 25 |
+ |
|
| 26 |
+script('pax_fax', 'settings');
|
|
| 27 |
+style('pax_fax', 'style');
|
|
| 28 |
+ |
|
| 29 |
+?> |
|
| 30 |
+ |
|
| 31 |
+<div id="pax_fax_adm"> |
|
| 32 |
+ <div class="section"> |
|
| 33 |
+ <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
+ <p id="settings-dscr"><h3><?php p($l->t('Please enter your credentials and options in the fields from below:')); ?></h3></p><br>
|
|
| 35 |
+ |
|
| 36 |
+ <div class="stp_followupsection"> |
|
| 37 |
+ |
|
| 38 |
+ <form id="phaxio_credentials" action="#" > |
|
| 39 |
+ |
|
| 40 |
+ <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
+ panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
+ <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
+ placeholder="<?php p($l->t('e.g. d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
+ |
|
| 45 |
+ <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
+ panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
+ <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
+ placeholder="<?php p($l->t('e.g. 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
+ |
|
| 50 |
+ <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
+ left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
+ <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
+ placeholder="<?php p($l->t('e.g. b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
+ |
|
| 55 |
+ <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
+ <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> , |
|
| 58 |
+ where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number in her/his Phaxio account (Callback |
|
| 59 |
+ URLs can only be configured one per Phaxio phone number. If <b><font style="color:#a11a1a;">username</font></b> contains an <b>@</b> , replace <b>@</b> |
|
| 60 |
+ with <b>&commat;</b> otherwise the URL won't function), <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> is the 'application |
|
| 61 |
+ password' created for this purpose as explained below, and <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud domain. To |
|
| 62 |
+ create the Nextcloud 'application password' click on the user picture in the upper right corner, then click 'Settings', then, on the left panel, under |
|
| 63 |
+ 'Personal' click 'Security', then under 'Devices & sessions', in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. |
|
| 64 |
+ The password will be displayed only when created. Copy the password, click the 'Done' button, enter the password in the constructed callback URL between ':' |
|
| 65 |
+ and '@' as shown above, copy the entire callback URL to a safe location, then enter the callback URL in the field from below. The next step is to enter the |
|
| 66 |
+ callback URL that you have just created in your Phaxio account: log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the |
|
| 67 |
+ row of the phone number for which you want to set up the callback URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' |
|
| 68 |
+ on the left panel, then scroll down to 'Webhook Version' and choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' |
|
| 69 |
+ button at the bottom of this page to save all the settings to the database.)</label></p> |
|
| 70 |
+ <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 71 |
+ placeholder="<?php p($l->t('e.g. https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 72 |
+ |
|
| 73 |
+ <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 74 |
+ <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 75 |
+ |
|
| 76 |
+ <p>To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux),
|
|
| 77 |
+ has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to |
|
| 78 |
+ send emails from command line (by specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution). |
|
| 79 |
+ </p><br> |
|
| 80 |
+ |
|
| 81 |
+ <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received:'));?>
|
|
| 82 |
+ </b></label></p> |
|
| 83 |
+ <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 84 |
+ placeholder="<?php p($l->t('e.g. john.doe@example.com')); ?>" /><br>
|
|
| 85 |
+ |
|
| 86 |
+ <input type="hidden" id="user_id" name="user_id" /> |
|
| 87 |
+ |
|
| 88 |
+ <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 89 |
+ |
|
| 90 |
+ <span id="paxfax_save_msg"></span> |
|
| 91 |
+ |
|
| 92 |
+ </form> |
|
| 93 |
+ </div> |
|
| 94 |
+ </div> |
|
| 95 |
+</div> |
| 1 | 1 |
deleted file mode 100644 |
| ... | ... |
@@ -1,94 +0,0 @@ |
| 1 |
-<?php |
|
| 2 |
-/** |
|
| 3 |
- * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
- * |
|
| 5 |
- * @author Double Bastion LLC |
|
| 6 |
- * |
|
| 7 |
- * @license GNU AGPL version 3 or any later version |
|
| 8 |
- * |
|
| 9 |
- * This program is free software; you can redistribute it and/or |
|
| 10 |
- * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
- * License as published by the Free Software Foundation; either |
|
| 12 |
- * version 3 of the License, or any later version. |
|
| 13 |
- * |
|
| 14 |
- * This program is distributed in the hope that it will be useful, |
|
| 15 |
- * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
- * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
- * |
|
| 19 |
- * You should have received a copy of the GNU Affero General Public |
|
| 20 |
- * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
- * |
|
| 22 |
- */ |
|
| 23 |
- |
|
| 24 |
-declare(strict_types=1); |
|
| 25 |
- |
|
| 26 |
-script('pax_fax', 'settings');
|
|
| 27 |
-style('pax_fax', 'style');
|
|
| 28 |
- |
|
| 29 |
-?> |
|
| 30 |
- |
|
| 31 |
-<div id="pax_fax_adm"> |
|
| 32 |
- <div class="section"> |
|
| 33 |
- <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
- <p id="settings-dscr"><h3><?php p($l->t('Please enter your credentials and options in the fields from below:')); ?></h3></p><br>
|
|
| 35 |
- |
|
| 36 |
- <div class="stp_followupsection"> |
|
| 37 |
- |
|
| 38 |
- <form id="phaxio_credentials" action="#" > |
|
| 39 |
- |
|
| 40 |
- <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
- panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
- <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
- placeholder="<?php p($l->t('e.g. d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
- |
|
| 45 |
- <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
- panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
- <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
- placeholder="<?php p($l->t('e.g. 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
- |
|
| 50 |
- <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
- left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
- <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
- placeholder="<?php p($l->t('e.g. b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
- |
|
| 55 |
- <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
- <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
- style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> , |
|
| 58 |
- where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number in her/his Phaxio account (callback |
|
| 59 |
- URLs can only be configured one per Phaxio phone number), <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> |
|
| 60 |
- is the 'application password' created for this purpose as explained below, and <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud |
|
| 61 |
- domain. To create the Nextcloud 'application password' click on the user picture in the upper right corner, then click 'Settings', then, on the left panel, |
|
| 62 |
- under 'Personal' click 'Security', then under 'Devices & sessions', in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. |
|
| 63 |
- The password will be displayed only when created. Copy the password, click the 'Done' button, enter the password in the constructed callback URL between ':' |
|
| 64 |
- and '@' as shown above, copy the entire callback URL to a safe location, then enter the callback URL in the field from below. The next step is to enter the |
|
| 65 |
- callback URL that you have just created in your Phaxio account: log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the |
|
| 66 |
- row of the phone number for which you want to set up the callback URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' |
|
| 67 |
- on the left panel, then scroll down to 'Webhook Version' and choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' |
|
| 68 |
- button at the bottom of this page to save all the settings to the database.)</label></p> |
|
| 69 |
- <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 70 |
- placeholder="<?php p($l->t('e.g. https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 71 |
- |
|
| 72 |
- <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 73 |
- <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 74 |
- |
|
| 75 |
- <p>To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux),
|
|
| 76 |
- has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to |
|
| 77 |
- send emails from command line (by specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution). |
|
| 78 |
- </p><br> |
|
| 79 |
- |
|
| 80 |
- <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received:'));?>
|
|
| 81 |
- </b></label></p> |
|
| 82 |
- <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 83 |
- placeholder="<?php p($l->t('e.g. john.doe@example.com')); ?>" /><br>
|
|
| 84 |
- |
|
| 85 |
- <input type="hidden" id="user_id" name="user_id" /> |
|
| 86 |
- |
|
| 87 |
- <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 88 |
- |
|
| 89 |
- <span id="paxfax_save_msg"></span> |
|
| 90 |
- |
|
| 91 |
- </form> |
|
| 92 |
- </div> |
|
| 93 |
- </div> |
|
| 94 |
-</div> |
| 1 | 1 |
new file mode 100644 |
| ... | ... |
@@ -0,0 +1,94 @@ |
| 1 |
+<?php |
|
| 2 |
+/** |
|
| 3 |
+ * @copyright 2021 Double Bastion LLC <www.doublebastion.com> |
|
| 4 |
+ * |
|
| 5 |
+ * @author Double Bastion LLC |
|
| 6 |
+ * |
|
| 7 |
+ * @license GNU AGPL version 3 or any later version |
|
| 8 |
+ * |
|
| 9 |
+ * This program is free software; you can redistribute it and/or |
|
| 10 |
+ * modify it under the terms of the GNU AFFERO GENERAL PUBLIC LICENSE |
|
| 11 |
+ * License as published by the Free Software Foundation; either |
|
| 12 |
+ * version 3 of the License, or any later version. |
|
| 13 |
+ * |
|
| 14 |
+ * This program is distributed in the hope that it will be useful, |
|
| 15 |
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of |
|
| 16 |
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
|
| 17 |
+ * GNU AFFERO GENERAL PUBLIC LICENSE for more details. |
|
| 18 |
+ * |
|
| 19 |
+ * You should have received a copy of the GNU Affero General Public |
|
| 20 |
+ * License along with this program. If not, see <http://www.gnu.org/licenses/>. |
|
| 21 |
+ * |
|
| 22 |
+ */ |
|
| 23 |
+ |
|
| 24 |
+declare(strict_types=1); |
|
| 25 |
+ |
|
| 26 |
+script('pax_fax', 'settings');
|
|
| 27 |
+style('pax_fax', 'style');
|
|
| 28 |
+ |
|
| 29 |
+?> |
|
| 30 |
+ |
|
| 31 |
+<div id="pax_fax_adm"> |
|
| 32 |
+ <div class="section"> |
|
| 33 |
+ <h2><?php p($l->t('Pax Fax'));?></h2>
|
|
| 34 |
+ <p id="settings-dscr"><h3><?php p($l->t('Please enter your credentials and options in the fields from below:')); ?></h3></p><br>
|
|
| 35 |
+ |
|
| 36 |
+ <div class="stp_followupsection"> |
|
| 37 |
+ |
|
| 38 |
+ <form id="phaxio_credentials" action="#" > |
|
| 39 |
+ |
|
| 40 |
+ <p><label for="api_key" class="setlabeltext"><b><?php p($l->t('Phaxio API Key:'));?></b> (Log in to your Phaxio account, click 'API Keys' on the left
|
|
| 41 |
+ panel, then, under 'Live Keys' you will find the 'API Key'. Enter the 'API Key' in the field from below):</label></p> |
|
| 42 |
+ <input type="password" class="pax_fax_box" id="api_key" name="api_key" autocomplete="false" |
|
| 43 |
+ placeholder="<?php p($l->t('e.g. d6f172ce92e4f2 ...')); ?>" /><br>
|
|
| 44 |
+ |
|
| 45 |
+ <p><label for="api_secret" class="setlabeltext"><b><?php p($l->t('Phaxio API Secret:'));?></b> (While logged in to your Phaxio account, click 'API Keys' on the left
|
|
| 46 |
+ panel, then, under 'Live Keys' you will find the 'API Secret'. Enter the 'API Secret' in the field from below):</label></p> |
|
| 47 |
+ <input type="password" class="pax_fax_box" id="api_secret" name="api_secret" autocomplete="false" |
|
| 48 |
+ placeholder="<?php p($l->t('e.g. 8af589b8ad9579 ...')); ?>" /><br>
|
|
| 49 |
+ |
|
| 50 |
+ <p><label for="webhook_token" class="setlabeltext"><b><?php p($l->t('Phaxio Webhook Token:'));?></b> (While logged in to your Phaxio account, click 'Webhooks' on the
|
|
| 51 |
+ left panel, then copy the token found under 'Webhook Token' and enter it in the field from below):</label></p> |
|
| 52 |
+ <input type="password" class="pax_fax_box" id="webhook_token" name="webhook_token" autocomplete="false" |
|
| 53 |
+ placeholder="<?php p($l->t('e.g. b6d90b72ab6cce450025abd46f4d697')); ?>" /><br>
|
|
| 54 |
+ |
|
| 55 |
+ <p><label for="receive_url" class="setlabeltext"><b>Phaxio callback URL for incoming faxes</b> (This URL must have the form: |
|
| 56 |
+ <b>https://<font style="color:#a11a1a;">username</font>:<font |
|
| 57 |
+ style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font>@<font style="color:#a11a1a;">cloud.example.com</font>/apps/pax_fax/api/recfaxphaxio</b> , |
|
| 58 |
+ where <b><font style="color:#a11a1a;">username</font></b> is the Nextcloud user who has a Phaxio phone number in her/his Phaxio account (callback |
|
| 59 |
+ URLs can only be configured one per Phaxio phone number), <b><font style="color:#a11a1a;">6VTGs-c36j4-qK2wm-RgJcl-9pjUD</font></b> |
|
| 60 |
+ is the 'application password' created for this purpose as explained below, and <b><font style="color:#a11a1a;">cloud.example.com</font></b> is your Nextcloud |
|
| 61 |
+ domain. To create the Nextcloud 'application password' click on the user picture in the upper right corner, then click 'Settings', then, on the left panel, |
|
| 62 |
+ under 'Personal' click 'Security', then under 'Devices & sessions', in the 'App name' field enter Pax_Fax, then click the 'Create new app password' button. |
|
| 63 |
+ The password will be displayed only when created. Copy the password, click the 'Done' button, enter the password in the constructed callback URL between ':' |
|
| 64 |
+ and '@' as shown above, copy the entire callback URL to a safe location, then enter the callback URL in the field from below. The next step is to enter the |
|
| 65 |
+ callback URL that you have just created in your Phaxio account: log in to Phaxio, click 'Phone Numbers' on the left panel, click the settings wheel on the |
|
| 66 |
+ row of the phone number for which you want to set up the callback URL, enter the URL in the 'Callback URL' field, then click 'Save'. Also, click on 'Webhooks' |
|
| 67 |
+ on the left panel, then scroll down to 'Webhook Version' and choose 'Version 2.1.0', then click the 'Update' button. Don't forget to also click the 'Save' |
|
| 68 |
+ button at the bottom of this page to save all the settings to the database.)</label></p> |
|
| 69 |
+ <input type="password" class="pax_fax_boxspec" id="receive_url" name="receive_url" autocomplete="false" |
|
| 70 |
+ placeholder="<?php p($l->t('e.g. https://username:6VTGs-c36j4-qK2wm-RgJcl-9pjUD@cloud.example.com/apps/pax_fax/api/recfaxphaxio')); ?>" /><br><br><br>
|
|
| 71 |
+ |
|
| 72 |
+ <p><label for="get_notification" class="setlabeltext"><b><?php p($l->t('I want to see a notification in Nextcloud when a new fax is received:'));?></b></label></p>
|
|
| 73 |
+ <input type="checkbox" class="pax_fax_checkbox" id="get_notification" name="get_notification" autocomplete="false" /><br> |
|
| 74 |
+ |
|
| 75 |
+ <p>To enable email notifications for every received fax, the "sendmail" utility ("/usr/sbin/sendmail" on Debian Linux),
|
|
| 76 |
+ has to be present on the server. "sendmail" is a binary which gets installed when Postfix is installed. Also, the web server user (www-data) has to be allowed to |
|
| 77 |
+ send emails from command line (by specifying "authorized_submit_users = www-data" in "/etc/postfix/main.cf" for Postfix on a Debian based Linux distribution). |
|
| 78 |
+ </p><br> |
|
| 79 |
+ |
|
| 80 |
+ <p><label for="notification_email" class="setlabeltext"><b><?php p($l->t('I want to receive a notification to the email address from below, when a new fax is received:'));?>
|
|
| 81 |
+ </b></label></p> |
|
| 82 |
+ <input type="text" class="pax_fax_box" id="notification_email" name="notification_email" autocomplete="false" |
|
| 83 |
+ placeholder="<?php p($l->t('e.g. john.doe@example.com')); ?>" /><br>
|
|
| 84 |
+ |
|
| 85 |
+ <input type="hidden" id="user_id" name="user_id" /> |
|
| 86 |
+ |
|
| 87 |
+ <input id="save_fax_settings" type="submit" value="<?php p($l->t('Save')) ?>" />
|
|
| 88 |
+ |
|
| 89 |
+ <span id="paxfax_save_msg"></span> |
|
| 90 |
+ |
|
| 91 |
+ </form> |
|
| 92 |
+ </div> |
|
| 93 |
+ </div> |
|
| 94 |
+</div> |