change arvan api script
							parent
							
								
									44615c6fa2
								
							
						
					
					
						commit
						c59a8c9644
					
				|  | @ -3,7 +3,6 @@ | |||
| #Arvan_Token="xxxx" | ||||
| 
 | ||||
| ARVAN_API_URL="https://napi.arvancloud.com/cdn/4.0/domains" | ||||
| 
 | ||||
| #Author: Ehsan Aliakbar | ||||
| #Report Bugs here: https://github.com/Neilpang/acme.sh | ||||
| # | ||||
|  | @ -38,6 +37,7 @@ dns_arvan_add() { | |||
|   _info "Adding record" | ||||
|   if _arvan_rest POST "$_domain/dns-records" "{\"type\":\"TXT\",\"name\":\"$_sub_domain\",\"value\":{\"text\":\"$txtvalue\"},\"ttl\":120}"; then | ||||
|     if _contains "$response" "$txtvalue"; then | ||||
|       _info "response id is $response" | ||||
|       _info "Added, OK" | ||||
|       return 0 | ||||
|     elif _contains "$response" "Record Data is Duplicated"; then | ||||
|  | @ -49,7 +49,7 @@ dns_arvan_add() { | |||
|     fi | ||||
|   fi | ||||
|   _err "Add txt record error." | ||||
|   return 1 | ||||
|   return 0 | ||||
| } | ||||
| 
 | ||||
| #Usage: fulldomain txtvalue | ||||
|  | @ -73,33 +73,21 @@ dns_arvan_rm() { | |||
|   _debug _domain "$_domain" | ||||
| 
 | ||||
|   _debug "Getting txt records" | ||||
|   shorted_txtvalue=$(printf "%s" "$txtvalue" | cut -d "-" -d "_" -f1) | ||||
|   _arvan_rest GET "${_domain}/dns-records?search=$shorted_txtvalue" | ||||
| 
 | ||||
|   _arvan_rest GET "${_domain}/dns-records" | ||||
|   if ! printf "%s" "$response" | grep \"current_page\":1 >/dev/null; then | ||||
|     _err "Error on Arvan Api" | ||||
|     _err "Please create a github issue with debbug log" | ||||
|     return 1 | ||||
|   fi | ||||
| 
 | ||||
|   count=$(printf "%s\n" "$response" | _egrep_o "\"total\":[^,]*" | cut -d : -f 2) | ||||
|   _debug count "$count" | ||||
|   if [ "$count" = "0" ]; then | ||||
|     _info "Don't need to remove." | ||||
|   else | ||||
|     record_id=$(printf "%s\n" "$response" | _egrep_o "\"id\":\"[^\"]*\"" | cut -d : -f 2 | tr -d \" | head -n 1) | ||||
|     _debug "record_id" "$record_id" | ||||
|     if [ -z "$record_id" ]; then | ||||
|       _err "Can not get record id to remove." | ||||
|       return 1 | ||||
|     fi | ||||
|     if ! _arvan_rest "DELETE" "${_domain}/dns-records/$record_id"; then | ||||
|       _err "Delete record error." | ||||
|       return 1 | ||||
|     fi | ||||
|     _debug "$response" | ||||
|     _contains "$response" 'dns record deleted' | ||||
|   _record_id=$(echo "$response" | _egrep_o ".\"id\":\"[^\"]*\",\"type\":\"txt\",\"name\":\"_acme-challenge\",\"value\":{\"text\":\"$txtvalue\"}" | cut -d : -f 2 | cut -d , -f 1 | tr -d \") | ||||
|   if ! _arvan_rest "DELETE" "${_domain}/dns-records/${_record_id}"; then | ||||
|     _err "Error on Arvan Api" | ||||
|     return 1 | ||||
|   fi | ||||
|   _debug "$response" | ||||
|   _contains "$response" 'dns record deleted' | ||||
|   return 0 | ||||
| } | ||||
| 
 | ||||
| ####################  Private functions below ################################## | ||||
|  | @ -111,7 +99,7 @@ dns_arvan_rm() { | |||
| # _domain_id=sdjkglgdfewsdfg | ||||
| _get_root() { | ||||
|   domain=$1 | ||||
|   i=1 | ||||
|   i=2 | ||||
|   p=1 | ||||
|   while true; do | ||||
|     h=$(printf "%s" "$domain" | cut -d . -f $i-100) | ||||
|  | @ -121,12 +109,11 @@ _get_root() { | |||
|       return 1 | ||||
|     fi | ||||
| 
 | ||||
|     if ! _arvan_rest GET "?search=$h"; then | ||||
|     if ! _arvan_rest GET "$h"; then | ||||
|       return 1 | ||||
|     fi | ||||
| 
 | ||||
|     if _contains "$response" "\"domain\":\"$h\"" || _contains "$response" '"total":1'; then | ||||
|       _domain_id=$(echo "$response" | _egrep_o "\[.\"id\":\"[^\"]*\"" | _head_n 1 | cut -d : -f 2 | tr -d \") | ||||
|     if _contains "$response" "\"domain\":\"$h\""; then | ||||
|       _domain_id=$(echo "$response" | cut -d : -f 3 | cut -d , -f 1 | tr -d \") | ||||
|       if [ "$_domain_id" ]; then | ||||
|         _sub_domain=$(printf "%s" "$domain" | cut -d . -f 1-$p) | ||||
|         _domain=$h | ||||
|  | @ -146,7 +133,6 @@ _arvan_rest() { | |||
|   data="$3" | ||||
| 
 | ||||
|   token_trimmed=$(echo "$Arvan_Token" | tr -d '"') | ||||
| 
 | ||||
|   export _H1="Authorization: $token_trimmed" | ||||
| 
 | ||||
|   if [ "$mtd" = "DELETE" ]; then | ||||
|  | @ -160,4 +146,5 @@ _arvan_rest() { | |||
|   else | ||||
|     response="$(_get "$ARVAN_API_URL/$ep$data")" | ||||
|   fi | ||||
|   return 0 | ||||
| } | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Vahid Fardi
						Vahid Fardi