Skip to content

Commit

Permalink
rename app to client
Browse files Browse the repository at this point in the history
  • Loading branch information
nastaran78 committed Jul 2, 2024
1 parent e9530e2 commit 8bf4227
Show file tree
Hide file tree
Showing 4 changed files with 37 additions and 8 deletions.
30 changes: 30 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,36 @@ pip install Kenar
- [نمونه سرچ آگهی با فیلتر، دریافت اطلاعات یک آگهی، آگهی های کاربر و اطلاعات شماره تلفن کاربر](https://github.com/divar-ir/kenar-api/blob/main/samples/sample_finder.py)
- [نمونه ارسال پیام در چت و اجازه دریافت پیام ها روی یک آگهی](https://github.com/divar-ir/kenar-api/blob/main/samples/sample_chat.py)

به عنوان نمونه ، برای ساخت کلاینت کنار، نیاز است متغیر های محیطی `KENAR_APP_SLUG` (با مقدار برابر با شناسه یکتای برنامه) و `KENAR_API_KEY`(برابر با کلید محرمانه دریافت شده برای برنامه) ، `KENAR_OAUTH_SECRET` (برابر با کلید محرمانه ی OAuth) و `KENAR_OAUTH_REDIRECT_URL` (برابر با لینک بازگشت احراز باز) ست شوند و از طریق نمونه کد زیر کلاینت ساخته شود.


<div dir="ltr">

```python
import os
from kenar import ClientConfig, Client

client_conf = ClientConfig(
app_slug=os.environ.get("KENAR_APP_SLUG"),
api_key=os.environ.get("KENAR_API_KEY"),
oauth_secret=os.environ.get("KENAR_OAUTH_SECRET"),
oauth_redirect_url=os.environ.get("KENAR_OAUTH_REDIRECT_URL"),
)

kenar_client = Client(client_conf)
```
</div>

پس از ساخت کلاینت میتوان از تمام سرویس های نام برده ، با فراخوانی property مربوطه ، استفاده کرد. به عنوان مثال برای آپلود عکس میتوان از کد زیر بهره گرفت:

<div dir="ltr">

```python
rsp = kenar_client.addon.upload_image("PATH_TO_FILE")
```

</div>

## پیشنهادات برای بهبود
پذیرای هر گونه پیشنهادات شما برای بهتر کردن این کتاب‌خانه هستیم. در قسمت [issues](https://github.com/divar-ir/kenar-api/issues) پروژه میتوانید مسائل خود را با ما مطرح کنید.

Expand Down
3 changes: 1 addition & 2 deletions kenar/__init__.py
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
from .addon import *
from .app import AppConfig, KenarApp
from .app import ClientConfig, Client
from .chatmessage import *
from .finder import *
from .icons import *
from .image import *
from .oauth import *
from .widgets import *

6 changes: 3 additions & 3 deletions kenar/app.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
ACCESS_TOKEN_HEADER_NAME = "x-access-token"


class AppConfig(BaseModel):
class ClientConfig(BaseModel):
app_slug: str
api_key: str
oauth_secret: str
Expand Down Expand Up @@ -342,8 +342,8 @@ def get_send_message_resource_id(params: SendChatMessageResourceIdParams) -> str
).decode("utf-8")


class KenarApp:
def __init__(self, conf: AppConfig):
class Client:
def __init__(self, conf: ClientConfig):
if not conf.api_key:
raise ValueError("the KENAR_API_KEY environment variable must be set")
if not conf.app_slug:
Expand Down
6 changes: 3 additions & 3 deletions samples/sample_app.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,17 +3,17 @@

from dotenv import load_dotenv

from kenar import AppConfig, KenarApp
from kenar import ClientConfig, Client

load_dotenv()

logging.basicConfig(level=logging.INFO)

app_conf = AppConfig(
client_conf = ClientConfig(
app_slug=os.environ.get("KENAR_APP_SLUG"),
api_key=os.environ.get("KENAR_API_KEY"),
oauth_secret=os.environ.get("KENAR_OAUTH_SECRET"),
oauth_redirect_url=os.environ.get("KENAR_OAUTH_REDIRECT_URL"),
)

app = KenarApp(app_conf)
app = Client(client_conf)

0 comments on commit 8bf4227

Please sign in to comment.