Botextra Entegrasyonu

Botextra sistemini, kendi yazdığınız scriptlere kolayca entegre edebilirsiniz.

Botextra kurulum dosyaları developerların en kolay şekilde entegrasyon yapması için tasarlanmıştır.

1) Botextra mantığını anlamak.

Botextra sistemi client server mantığı ile çalışır, kullanıcı bir içerik eklemek istediği zaman botextra sitesinde ekle tuşuna basar sistem karşı tarafın ftp adresinde bulunan kurulum dosyalarına gerekli veriyi post eder kurulum dosyasıda bu post edilen veriyi gerekli yerlere yazdırır.

2) Ihtiyacınız olanlar

Tüm ihtiyacınız olan boş bir botextra kurulum dosyasıdır, bu dosyayı buradan indrebilirsiniz.

3) Kurulum dosyası ile gelenler :

botExtraClient.php
-botextra
--obj.updater.php
--obj.botExtraClient.php
--client.botextra.php

Buradaki dosyalardan üzerinde tek düzenleme yapacağınız dosya client.botextra.php dosyasıdır.

3) Entegrasyona başlamak
Tüm değişiklikleri client.botextra.php içerisinde yapmalısınız.Bu dosyanın içerisinde 3 tane function bulunmaktadır.

__construct() - Sadece tanımlamalar için kullanılır.
getCat() - Tüm kategorileri listelemeye yarar.
addToWebsite($content) - İçerik eklemeye yarar.
createCategories($categories) - Kategori oluşturmaya yarar.

4) Yapmanız gerekenler

4a) Script adını belirleme

İlk olarak dosyanın içerisinde script adınızı belirterek başlamalısınız. Bunun için aşağıdaki satırı düzenleyebilirsiniz

function __construct(){
        $this->script = "Script adınız";
        $this->uploadDir = "Yükleme yapacağınız klasör yolu";
} 

4b) Veri tabanı bağlantısı kurmak
Scriptinizin veri tabanına bağlanmak için dosyanın en üstünde kendi scriptinizin config dosyasını include etmelisiniz örn ;

include('ayar.php');
class botExtraScript extends botExtraClient {


Eğer ayar dosyanızda mysql bağlantısı yapılmıyor ise, bu satırın hemen altında mysql bağlantısını yapın

include('ayar.php');
mysql_connect($ayarlar[db_host],$ayarlar[db_username],$ayarlar[db_password]);
mysql_select_db($ayarlar[db]);
mysql_set_charset("utf8");

Not: Kesinlikle bu alanlar sabit yazmayın ayarların değişkenlerden geldiğine emin olun.
Not2: Tüm botextra verisi utf8 olarak gelmektedir.

4c) Kategorileri listeleme
Kategori listelemeyi getCat() kategorisi altında yapmalısınız, fonsiyonunuz sonuç olarak
array[{kategori_id}] = {kategori_adi}

döndürmelidir.
Örnek bir getCat() fonsionu :

function getCat(){
    $sorgu = mysql_query("select * from kategori");
    while ($satir = mysql_fetch_assoc($sorgu)){
    $cikis[$satir[id]] = $satir[kategori_adi];
    
    }
    return $this->answer('OK','Kategoriler alindi',$return);
}

Tüm client-server haberleşmeleri yukarıdaki gibi answer komutuyla gönderilmelidir;


4d) İçerik Eklemek

İçerik ekleme işlemini addToWebsite($content) fonsionunda yapmalısınız. $conent değişkenin alabileceği veriler aşağıdadır.

[url]           => Kaynak Url    (String)
[title]         => Başlık        (String)
[image]         => Resim urlsi   (String)
[content]       => İçerik        (String)
[clearContent]  => Html tagları kullanılmayan İçerik (String)
[category_id]   => Kategori id ( int getCat() fonsionunda vermiş olduğunuz kategori idsi)
[parts]         => Array olarak video listesi  her bir satirda $video[embed] olarak embed kodu gelecektir.
[desc]          => Meta description  (String)
[tags]          => Etiketler     (virgülle ayrılmış olarak String)
[save_image]    => Resmi sunucuya kaydet. (1/0 bool)
[save_game]     => Oyunu sunucuya kaydet. (1/0 bool)
[save_game]     => Oyunu sunucuya kaydet. (1/0 bool)
[use_image_at_content] => Resmi konu içerisinde kullan (1/0 bool)

Yapılması gerekenler
addToWebsite() fonsionunda ilk olarak yapmanız gereken resmi sunucuya kayıt etmektir,bunun için yardımcı
$this->download($content['image']);

fonsionunu kullanabilirsiniz, bu fonsion verdiğiniz urlden resmi çekip sunucuya kayıt edilmesini sağlayacaktır. Return olarak size yeni adresi verir.

örnek kullanım :

function addToWebsite($content){
	$seoName = $this->seoString($content['title']);
	if ($content['save_image']) {
		$content['image'] = $this->download($content['image'],$seoName);
  	}
}

şeklindedir.

Resmi kayıt ettikten sonra sonraki aşama eğer ihtiyacınız varsa bir sef url oluşturmaktır bunun için $this->seoString() fonsionunu kullnabilirsiniz. Bu fonsiona $content['title'] değişkenini verip sef url alabilirsiniz.

Resmi ve sef urlnizi aldıktan sonra veriyi normal mysql_query ile kayıt ettirebilirsiniz örnek ;

function addToWebsite($content){
	$seoName = $this->seoString($content['title']);
	if ($content['save_image']) {
		$content['image'] = $this->download($content['image'],$seoName);
  	}
    
    $insertData = array(
            'basiik'        => $content['title'],
            'sef'           => $seoName,
            'resim'         => $content['image'],
            'icerik'        => $content['content'],
            'kategori_id'   => $content['category_id'],
        );
    $insertId = $this->insertData('yazilar',$insertData);
...

Son olarak yapmanız gereken servera başarılı mesajını göndermektir. Eklenen urlyi gönderirseniz paylaşımcı kısmında kullanabilirsiniz.

$url = $this->siteUrl('yazilar/'.$insertId);
return $this->answer("OK","İçerik Eklendi.",$url);

Tüm düzenlemeniz gereken içerik bu kadardır.

5) Entegrasyonunuzu test etmek.

Yapmış olduğunuz entegrasyonu test etmek için : Entegrasyon test aracı'nı kullanabilirsiniz, bu araç ile sitenize botextra bir içerik yollayacaktır. Böylelikle verinizin doğru yere kayıt olduğunu doğrulayabilirsiniz.

6) Entegrasyonu botextraya eklemek

Bitirmiş olduğunuz entegrasyon dosyasını destek {et} botextra adresine mail olarak atabilirsiniz. Yazılım uzmanlarımız entegrasyonunuzu inceleyerek sistemimize ekleyecektir.

İşte bütün yapmanız gereken bu kadar, artık botextra ile uyumlu olan yazılımını botextranın binlerce müşterisiyle paylaşabilir, sisteminizi daha cazip kılabilirsiniz.

Bunun dışında sitenize yada forum konularınıza botextra ile uyumluluğunuzu gösteren :

bannerınızı koyabilirsiniz.

 

İyi çalışmalar