EmailInterface.php 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346
  1. <?php
  2. namespace ZN\Services;
  3. interface EmailInterface
  4. {
  5. //----------------------------------------------------------------------------------------------------
  6. //
  7. // Yazar : Ozan UYKUN <ozanbote@windowslive.com> | <ozanbote@gmail.com>
  8. // Site : www.zntr.net
  9. // Lisans : The MIT License
  10. // Telif Hakkı: Copyright (c) 2012-2016, zntr.net
  11. //
  12. //----------------------------------------------------------------------------------------------------
  13. /******************************************************************************************
  14. * SETTINGS *
  15. *******************************************************************************************
  16. | Genel Kullanım: E-posta ayarlarını yapılandırmak için kullanılır. |
  17. | |
  18. | Parametreler: Tek parametresi vardır. |
  19. | 1. array var @config => Yapılandırılacak ayarlar. |
  20. | |
  21. | Örnek Kullanım: settings(array('wordWrap' => true)); |
  22. | |
  23. ******************************************************************************************/
  24. public function settings($settings);
  25. /******************************************************************************************
  26. * SMPT HOST *
  27. *******************************************************************************************
  28. | Genel Kullanım: SMPT Host ayarını yapmak için kullanılır. |
  29. @param string $host
  30. retun object
  31. | |
  32. ******************************************************************************************/
  33. public function smtpHost($host);
  34. /******************************************************************************************
  35. * CONTENT TYPE *
  36. *******************************************************************************************
  37. | Genel Kullanım: E-posta içeriğinin türünü ayarlamak için kullanılır. |
  38. @param string $type plain
  39. retun object
  40. | |
  41. ******************************************************************************************/
  42. public function contentType($type);
  43. /******************************************************************************************
  44. * CHARSET *
  45. *******************************************************************************************
  46. | Genel Kullanım: Metnin karakter kodlama türünü ayarlamak için kullanılır. |
  47. @param string $charset UTF-8
  48. retun object
  49. | |
  50. ******************************************************************************************/
  51. public function charset($charset);
  52. /******************************************************************************************
  53. * SMPT USER *
  54. *******************************************************************************************
  55. | Genel Kullanım: SMPT kullanıcı ayarını yapmak için kullanılır. |
  56. | |
  57. | Parametreler: Tek parametresi vardır. |
  58. | 1. string var @user => SMTP kullanıcı adı. |
  59. | |
  60. | Örnek Kullanım: smtpUser('bilgi@zntr.net'); |
  61. | |
  62. ******************************************************************************************/
  63. public function smtpUser($user);
  64. /******************************************************************************************
  65. * DSN *
  66. *******************************************************************************************
  67. | Genel Kullanım: DSN durumunu ayarlamak için kullanılır. |
  68. @param bool $dsn true
  69. @return object
  70. | |
  71. ******************************************************************************************/
  72. public function smtpDsn($dsn);
  73. /******************************************************************************************
  74. * SMPT PASSWORD *
  75. *******************************************************************************************
  76. | Genel Kullanım: SMPT kullanıcı şifre ayarını yapmak için kullanılır. |
  77. | |
  78. | Parametreler: Tek parametresi vardır. |
  79. | 1. string var @pass => SMTP kullanıcı şifresi. |
  80. | |
  81. | Örnek Kullanım: smtpPassword('zntr1234'); |
  82. | |
  83. ******************************************************************************************/
  84. public function smtpPassword($pass);
  85. /******************************************************************************************
  86. * SMPT PORT *
  87. *******************************************************************************************
  88. | Genel Kullanım: SMPT port ayarını yapmak için kullanılır. |
  89. | |
  90. | Parametreler: Tek parametresi vardır. |
  91. | 1. string var @port => SMTP port numarası. |
  92. | |
  93. | Örnek Kullanım: smtpPort(587); |
  94. | |
  95. ******************************************************************************************/
  96. public function smtpPort($port);
  97. /******************************************************************************************
  98. * SMPT TIMEOUT *
  99. *******************************************************************************************
  100. | Genel Kullanım: SMPT bağlantı zaman aşımı ayarını yapmak için kullanılır. |
  101. | |
  102. | Parametreler: Tek parametresi vardır. |
  103. | 1. string var @timeout => SMTP zaman aşımı süresi. |
  104. | |
  105. | Örnek Kullanım: smtpTimeout(10); // 10 Saniye |
  106. | |
  107. ******************************************************************************************/
  108. public function smtpTimeout($timeout);
  109. /******************************************************************************************
  110. * SMPT KEEP ALIVE *
  111. *******************************************************************************************
  112. | Genel Kullanım: SMPT bağlantısını açık tutulup tutulmayacağını ayarlamak için kullanılır|
  113. | |
  114. | Parametreler: Tek parametresi vardır. |
  115. | 1. string var @keepAlive => Bağlantı durumu. |
  116. | |
  117. | Örnek Kullanım: smtpKeepAlive(true); |
  118. | |
  119. ******************************************************************************************/
  120. public function smtpKeepAlive($keepAlive);
  121. /******************************************************************************************
  122. * SMPT ENCODE *
  123. *******************************************************************************************
  124. | Genel Kullanım: SMPT tls veya ssl güvenlik ayarlarından birini kullanmak içindir. |
  125. | |
  126. | Parametreler: Tek parametresi vardır. |
  127. | 1. string var @encode => Şifreleme türü. |
  128. | |
  129. | Örnek Kullanım: smtpKeepAlive('tls'); // tls veya ssl |
  130. | |
  131. ******************************************************************************************/
  132. public function smtpEncode($encode);
  133. /******************************************************************************************
  134. * PRIORITY *
  135. *******************************************************************************************
  136. | Genel Kullanım: Gönderim öncelik derecesini ayarlamak için kullanılır. |
  137. @param numeric $count 3
  138. @return object
  139. | |
  140. ******************************************************************************************/
  141. public function priority($count);
  142. /******************************************************************************************
  143. * TO *
  144. *******************************************************************************************
  145. | Genel Kullanım: Alıcı. |
  146. @param string $to
  147. @param string $name
  148. @return object
  149. | |
  150. ******************************************************************************************/
  151. public function to($to, $name);
  152. /******************************************************************************************
  153. * RECEIVER / TO *
  154. *******************************************************************************************
  155. | Genel Kullanım: Alıcı. |
  156. @param string $to
  157. @param string $name
  158. @return object
  159. | |
  160. ******************************************************************************************/
  161. public function receiver($to, $name);
  162. /******************************************************************************************
  163. * REPLY TO *
  164. *******************************************************************************************
  165. | Genel Kullanım: Alıcı. |
  166. @param $to
  167. @return object
  168. | |
  169. ******************************************************************************************/
  170. public function replyTo($replyTo, $name);
  171. /******************************************************************************************
  172. * CC *
  173. *******************************************************************************************
  174. | Genel Kullanım: CC Alıcıları. |
  175. @param $cc
  176. @return object
  177. | |
  178. ******************************************************************************************/
  179. public function cc($cc, $name);
  180. /******************************************************************************************
  181. * BCC *
  182. *******************************************************************************************
  183. | Genel Kullanım: BCC Alıcıları. |
  184. @param $bcc
  185. @return object
  186. | |
  187. ******************************************************************************************/
  188. public function bcc($bcc, $name);
  189. /******************************************************************************************
  190. * FROM *
  191. *******************************************************************************************
  192. | Genel Kullanım: Gönderici. |
  193. @param $from
  194. @param $name
  195. @return void
  196. | |
  197. ******************************************************************************************/
  198. public function from($from, $name, $returnPath);
  199. /******************************************************************************************
  200. * SENDER / FROM *
  201. *******************************************************************************************
  202. | Genel Kullanım: Gönderici. |
  203. @param $from
  204. @param $name
  205. @return void
  206. | |
  207. ******************************************************************************************/
  208. public function sender($from, $name, $returnPath);
  209. /******************************************************************************************
  210. * SUBJECT *
  211. *******************************************************************************************
  212. | Genel Kullanım: Konu. |
  213. @param $subject
  214. @return void
  215. | |
  216. ******************************************************************************************/
  217. public function subject($subject);
  218. /******************************************************************************************
  219. * MESSAGE *
  220. *******************************************************************************************
  221. | Genel Kullanım: Mesaj |
  222. @param $message
  223. @return void
  224. | |
  225. ******************************************************************************************/
  226. public function message($message);
  227. /******************************************************************************************
  228. * CONTENT / MESSAGE *
  229. *******************************************************************************************
  230. | Genel Kullanım: Mesaj |
  231. @param $message
  232. @return void
  233. | |
  234. ******************************************************************************************/
  235. public function content($message);
  236. /******************************************************************************************
  237. * ADD HEADER *
  238. *******************************************************************************************
  239. | Genel Kullanım: Başlık eklemek için kullanılır. |
  240. @param string $header
  241. @param string $value
  242. @return void
  243. | |
  244. ******************************************************************************************/
  245. public function addHeader($header, $value);
  246. /******************************************************************************************
  247. * CONTENT TYPE *
  248. *******************************************************************************************
  249. | Genel Kullanım: Mesajın içerğini kodlamak için kullanılılr. |
  250. @param string $type 8bit
  251. @return object
  252. | |
  253. ******************************************************************************************/
  254. public function encodingType($type);
  255. /******************************************************************************************
  256. * MULTIPART *
  257. *******************************************************************************************
  258. | Genel Kullanım: Mesajın içeriğinin sınır. |
  259. @param string mixed
  260. @return object
  261. | |
  262. ******************************************************************************************/
  263. public function multiPart($multiPart);
  264. /******************************************************************************************
  265. * ATTACHMENT *
  266. *******************************************************************************************
  267. | Genel Kullanım: E-post gönderiminde gönderiye eklenecek ekler. |
  268. @param string $file
  269. @param string $disposition
  270. @param string $newName
  271. @param string $mime application/octet-stream
  272. @return array
  273. | |
  274. ******************************************************************************************/
  275. public function attachment($file, $disposition, $newName, $mime);
  276. /******************************************************************************************
  277. * ATTACHMENT CONTENT ID *
  278. *******************************************************************************************
  279. | Genel Kullanım: Ekin içerik id bilgisini verir. |
  280. @param string $filename
  281. @return array
  282. | |
  283. ******************************************************************************************/
  284. public function attachmentContentId($filename);
  285. /******************************************************************************************
  286. * SEND *
  287. *******************************************************************************************
  288. | Genel Kullanım: E-posta gönderimini sağlayan nihai yöntemdir. |
  289. @param string $subject
  290. @param string $message
  291. @return bool
  292. | |
  293. ******************************************************************************************/
  294. public function send($subject, $message);
  295. }